mirror of
https://github.com/logos-messaging/logos-messaging-python-bindings.git
synced 2026-04-12 07:13:09 +00:00
Modify send API wrapper
This commit is contained in:
parent
6777158dd3
commit
1a7f9a9d00
@ -1,10 +1,12 @@
|
|||||||
import json
|
import json
|
||||||
import threading
|
import threading
|
||||||
import logging
|
import logging
|
||||||
|
from time import sleep
|
||||||
|
|
||||||
from cffi import FFI
|
from cffi import FFI
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
from result import Result, Ok, Err
|
from result import Result, Ok, Err
|
||||||
|
import time
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
ffi = FFI()
|
ffi = FFI()
|
||||||
@ -257,13 +259,62 @@ class NodeWrapper:
|
|||||||
|
|
||||||
message_json = json.dumps(message, separators=(",", ":"), ensure_ascii=False)
|
message_json = json.dumps(message, separators=(",", ":"), ensure_ascii=False)
|
||||||
|
|
||||||
rc = lib.logosdelivery_send(
|
request_id = lib.logosdelivery_send(
|
||||||
self.ctx,
|
self.ctx,
|
||||||
cb,
|
cb,
|
||||||
ffi.NULL,
|
ffi.NULL,
|
||||||
message_json.encode("utf-8"),
|
message_json.encode("utf-8"),
|
||||||
)
|
)
|
||||||
if rc != 0:
|
|
||||||
return Err(f"send_message: immediate call failed (ret={rc})")
|
|
||||||
|
|
||||||
return _wait_cb(state, "send_message", timeout_s)
|
if request_id < 0:
|
||||||
|
return Err(f"send_message: immediate call failed (ret={request_id})")
|
||||||
|
|
||||||
|
wait_result = _wait_cb(state, "send_message", timeout_s)
|
||||||
|
if wait_result.is_err():
|
||||||
|
return Err(wait_result.err())
|
||||||
|
|
||||||
|
return Ok(request_id)
|
||||||
|
|
||||||
|
def main():
|
||||||
|
config = {
|
||||||
|
"logLevel": "DEBUG",
|
||||||
|
"mode": "Core",
|
||||||
|
"protocolsConfig": {
|
||||||
|
"entryNodes": [
|
||||||
|
"/dns4/node-01.do-ams3.misc.logos-chat.status.im/tcp/30303/p2p/16Uiu2HAkxoqUTud5LUPQBRmkeL2xP4iKx2kaABYXomQRgmLUgf78"
|
||||||
|
],
|
||||||
|
"clusterId": 3,
|
||||||
|
"autoShardingConfig": {"numShardsInCluster": 8},
|
||||||
|
},
|
||||||
|
"networkingConfig": {
|
||||||
|
"listenIpv4": "0.0.0.0",
|
||||||
|
"p2pTcpPort": 60000,
|
||||||
|
"discv5UdpPort": 9000,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
topic = "/test/1/chat/proto"
|
||||||
|
|
||||||
|
message = {
|
||||||
|
"contentTopic": topic,
|
||||||
|
"payload": "SGVsbG8=",
|
||||||
|
"ephemeral": False,
|
||||||
|
}
|
||||||
|
|
||||||
|
node_result = NodeWrapper.create_and_start(config)
|
||||||
|
sleep(20)
|
||||||
|
if node_result.is_err():
|
||||||
|
print(node_result.err())
|
||||||
|
return
|
||||||
|
|
||||||
|
node = node_result.ok_value
|
||||||
|
|
||||||
|
print(node.subscribe_content_topic(topic))
|
||||||
|
#print(node.send_message(message))
|
||||||
|
|
||||||
|
print(node.stop_node())
|
||||||
|
print(node.destroy())
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
Loading…
x
Reference in New Issue
Block a user