Skip to content

Commit b3ea14f

Browse files
committed
add mock puppet,but not implemented completely
1 parent 431b268 commit b3ea14f

File tree

4 files changed

+271
-10
lines changed

4 files changed

+271
-10
lines changed

wechaty/src/main/java/io/github/wechaty/examples/Main.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.github.wechaty.examples;
22

33

4-
import io.github.wechaty.MessageListener;
4+
import io.github.wechaty.RoomInnerMessageListener;
55
import io.github.wechaty.Wechaty;
66
import io.github.wechaty.filebox.FileBox;
77
import io.github.wechaty.user.Contact;
@@ -28,7 +28,7 @@ public static void main(String[] args) throws ExecutionException, InterruptedExc
2828
System.out.println(QrcodeUtils.getQr(qrcode));
2929
});
3030

31-
bot.on("message", (MessageListener) message -> {
31+
bot.on("message", (RoomInnerMessageListener) message -> {
3232

3333
Contact from = message.from();
3434
Room room = message.room();

wechaty/src/main/kotlin/RoomListener.kt renamed to wechaty/src/main/kotlin/io/github/wechaty/RoomListener.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
package io.github.wechaty
2+
13
import io.github.wechaty.user.Contact
24
import io.github.wechaty.user.Message
35
import io.github.wechaty.user.RoomInvitation
@@ -14,7 +16,7 @@ interface LeaveListener {
1416
}
1517

1618
@FunctionalInterface
17-
interface MessageListener {
19+
interface RoomInnerMessageListener {
1820
fun handler(message: Message, date: Date)
1921
}
2022

wechaty/src/main/kotlin/io/github/wechaty/user/Room.kt

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package io.github.wechaty.user
22

3-
import InviteListener
4-
import JoinListener
5-
import LeaveListener
6-
import MessageListener
7-
import TopicListener
3+
import io.github.wechaty.InviteListener
4+
import io.github.wechaty.JoinListener
5+
import io.github.wechaty.LeaveListener
6+
import io.github.wechaty.RoomInnerMessageListener
7+
import io.github.wechaty.TopicListener
88
import io.github.wechaty.Accessory
99
import io.github.wechaty.Puppet
1010
import io.github.wechaty.Wechaty
@@ -172,10 +172,10 @@ class Room(wechaty: Wechaty, val id: String) : Accessory(wechaty), Sayable {
172172
})
173173
}
174174

175-
fun on(eventName: String, listener: MessageListener) {
175+
fun on(eventName: String, listenerRoomInner: RoomInnerMessageListener) {
176176
super.on(eventName, object : Listener {
177177
override fun handler(vararg any: Any) {
178-
listener.handler(any[0] as Message, any[1] as Date)
178+
listenerRoomInner.handler(any[0] as Message, any[1] as Date)
179179
}
180180
})
181181
}
Lines changed: 259 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,259 @@
1+
package io.github.wechaty
2+
3+
import io.github.wechaty.filebox.FileBox
4+
import io.github.wechaty.schemas.*
5+
import org.slf4j.LoggerFactory
6+
import java.util.concurrent.Future
7+
8+
class MockPuppet(puppetOptions: PuppetOptions) : Puppet(puppetOptions) {
9+
override fun start(): Future<Void> {
10+
TODO("Not yet implemented")
11+
log.info("MockPuppet start()")
12+
13+
//TODO("StateSwitch")
14+
/*
15+
if (this.state.on()) {
16+
log.warn('PuppetMock', 'start() is called on a ON puppet. await ready(on) and return.')
17+
await this.state.ready('on')
18+
return
19+
}
20+
21+
this.state.on('pending')
22+
// await some tasks...
23+
this.state.on(true)
24+
*/
25+
val eventScanPayload = EventScanPayload(ScanStatus.Cancel)
26+
eventScanPayload.qrcode = "https://github.com/wechaty/wechaty-puppet-mock"
27+
emit("scan", eventScanPayload)
28+
29+
30+
}
31+
32+
override fun stop(): Future<Void> {
33+
TODO("Not yet implemented")
34+
}
35+
36+
override fun logout(): Future<Void> {
37+
TODO("Not yet implemented")
38+
}
39+
40+
override fun ding(data: String?) {
41+
TODO("Not yet implemented")
42+
}
43+
44+
override fun contactSelfName(name: String): Future<Void> {
45+
TODO("Not yet implemented")
46+
}
47+
48+
override fun contactSelfQRCode(): Future<String> {
49+
TODO("Not yet implemented")
50+
}
51+
52+
override fun contactSelfSignature(signature: String): Future<Void> {
53+
TODO("Not yet implemented")
54+
}
55+
56+
override fun tagContactAdd(tagId: String, contactId: String): Future<Void> {
57+
TODO("Not yet implemented")
58+
}
59+
60+
override fun tagContactDelete(tagId: String): Future<Void> {
61+
TODO("Not yet implemented")
62+
}
63+
64+
override fun tagContactList(contactId: String): Future<List<String>> {
65+
TODO("Not yet implemented")
66+
}
67+
68+
override fun tagContactList(): Future<List<String>> {
69+
TODO("Not yet implemented")
70+
}
71+
72+
override fun tagContactRemove(tagId: String, contactId: String): Future<Void> {
73+
TODO("Not yet implemented")
74+
}
75+
76+
override fun contactAlias(contactId: String): Future<String> {
77+
TODO("Not yet implemented")
78+
}
79+
80+
override fun contactAlias(contactId: String, alias: String?): Future<Void> {
81+
TODO("Not yet implemented")
82+
}
83+
84+
override fun getContactAvatar(contactId: String): Future<FileBox> {
85+
TODO("Not yet implemented")
86+
}
87+
88+
override fun setContactAvatar(contactId: String, file: FileBox): Future<Void> {
89+
TODO("Not yet implemented")
90+
}
91+
92+
override fun contactList(): Future<List<String>> {
93+
TODO("Not yet implemented")
94+
}
95+
96+
override fun contactRawPayload(contractId: String): Future<ContactPayload> {
97+
TODO("Not yet implemented")
98+
}
99+
100+
override fun contactRawPayloadParser(rawPayload: ContactPayload): Future<ContactPayload> {
101+
TODO("Not yet implemented")
102+
}
103+
104+
override fun friendshipAccept(friendshipId: String): Future<Void> {
105+
TODO("Not yet implemented")
106+
}
107+
108+
override fun friendshipAdd(contractId: String, hello: String): Future<Void> {
109+
TODO("Not yet implemented")
110+
}
111+
112+
override fun friendshipSearchPhone(phone: String): Future<String?> {
113+
TODO("Not yet implemented")
114+
}
115+
116+
override fun friendshipSearchWeixin(weixin: String): Future<String?> {
117+
TODO("Not yet implemented")
118+
}
119+
120+
override fun friendshipRawPayload(friendshipId: String): Future<FriendshipPayload> {
121+
TODO("Not yet implemented")
122+
}
123+
124+
override fun friendshipRawPayloadParser(rawPayload: FriendshipPayload): Future<FriendshipPayload> {
125+
TODO("Not yet implemented")
126+
}
127+
128+
override fun messageContact(messageId: String): Future<String> {
129+
TODO("Not yet implemented")
130+
}
131+
132+
override fun messageFile(messageId: String): Future<FileBox> {
133+
TODO("Not yet implemented")
134+
}
135+
136+
override fun messageImage(messageId: String, imageType: ImageType): Future<FileBox> {
137+
TODO("Not yet implemented")
138+
}
139+
140+
override fun messageMiniProgram(messageId: String): Future<MiniProgramPayload> {
141+
TODO("Not yet implemented")
142+
}
143+
144+
override fun messageUrl(messageId: String): Future<UrlLinkPayload> {
145+
TODO("Not yet implemented")
146+
}
147+
148+
override fun messageSendContact(conversationId: String, contactId: String): Future<String?> {
149+
TODO("Not yet implemented")
150+
}
151+
152+
override fun messageSendFile(conversationId: String, file: FileBox): Future<String?> {
153+
TODO("Not yet implemented")
154+
}
155+
156+
override fun messageSendMiniProgram(conversationId: String, miniProgramPayload: MiniProgramPayload): Future<String?> {
157+
TODO("Not yet implemented")
158+
}
159+
160+
override fun messageSendText(conversationId: String, text: String, mentionList: List<String>?): Future<String?> {
161+
TODO("Not yet implemented")
162+
}
163+
164+
override fun messageSendUrl(conversationId: String, urlLinkPayload: UrlLinkPayload): Future<String?> {
165+
TODO("Not yet implemented")
166+
}
167+
168+
override fun messageRecall(messageId: String): Future<Boolean> {
169+
TODO("Not yet implemented")
170+
}
171+
172+
override fun messageRawPayload(messageId: String): Future<MessagePayload> {
173+
TODO("Not yet implemented")
174+
}
175+
176+
override fun messageRawPayloadParser(rawPayload: MessagePayload): Future<MessagePayload> {
177+
TODO("Not yet implemented")
178+
}
179+
180+
override fun roomInvitationAccept(roomInvitation: String): Future<Void> {
181+
TODO("Not yet implemented")
182+
}
183+
184+
override fun roomInvitationRawPayload(roomInvitationId: String): Future<RoomInvitationPayload> {
185+
TODO("Not yet implemented")
186+
}
187+
188+
override fun roomInvitationRawPayloadParser(rawPayload: RoomInvitationPayload): Future<RoomInvitationPayload> {
189+
TODO("Not yet implemented")
190+
}
191+
192+
override fun roomAdd(roomId: String, contactId: String): Future<Void> {
193+
TODO("Not yet implemented")
194+
}
195+
196+
override fun roomAvatar(roomId: String): Future<FileBox> {
197+
TODO("Not yet implemented")
198+
}
199+
200+
override fun roomCreate(contactIdList: List<String>, topic: String?): Future<String> {
201+
TODO("Not yet implemented")
202+
}
203+
204+
override fun roomDel(roomId: String, contactId: String): Future<Void> {
205+
TODO("Not yet implemented")
206+
}
207+
208+
override fun roomList(): Future<List<String>> {
209+
TODO("Not yet implemented")
210+
}
211+
212+
override fun roomQRCode(roomId: String): Future<String> {
213+
TODO("Not yet implemented")
214+
}
215+
216+
override fun roomQuit(roomId: String): Future<Void> {
217+
TODO("Not yet implemented")
218+
}
219+
220+
override fun roomTopic(roomId: String): Future<String?>? {
221+
TODO("Not yet implemented")
222+
}
223+
224+
override fun roomTopic(roomId: String, topic: String): Future<Void> {
225+
TODO("Not yet implemented")
226+
}
227+
228+
override fun roomRawPayload(roomId: String): Future<RoomPayload> {
229+
TODO("Not yet implemented")
230+
}
231+
232+
override fun roomRawPayloadParser(roomPayload: RoomPayload): Future<RoomPayload> {
233+
TODO("Not yet implemented")
234+
}
235+
236+
override fun getRoomAnnounce(roomId: String): Future<String> {
237+
TODO("Not yet implemented")
238+
}
239+
240+
override fun setRoomAnnounce(roomId: String, text: String): Future<Void> {
241+
TODO("Not yet implemented")
242+
}
243+
244+
override fun roomMemberList(roomId: String): Future<List<String>> {
245+
TODO("Not yet implemented")
246+
}
247+
248+
override fun roomMemberRawPayload(roomId: String, contactId: String): Future<RoomMemberPayload> {
249+
TODO("Not yet implemented")
250+
}
251+
252+
override fun roomMemberRawPayloadParser(rawPayload: RoomMemberPayload): Future<RoomMemberPayload> {
253+
TODO("Not yet implemented")
254+
}
255+
256+
companion object {
257+
private val log = LoggerFactory.getLogger(MockPuppet::class.java)
258+
}
259+
}

0 commit comments

Comments
 (0)