A Python SignalR Core client
Project description
SignalR core client
Example
Using package from aspnet core - SignalRChat example chat without auth
from signalrcore.hub_connection import HubConnection
def input_with_default(input_text, default_value):
value = input(input_text.format(default_value))
return default_value if value is None or value.strip() == "" else value
server_url = input_with_default('Enter your server url(default: {0}): ', "ws://localhost:62342/chathub")
username = input_with_default('Enter your username (default: {0}): ', "mandrewcito")
# password = input_with_default('Enter your password (default: {0}): ', "Abc123.--123?")
hub_connection = HubConnection(server_url)
hub_connection.build()
hub_connection.on("ReceiveMessage", print)
hub_connection.start()
message = None
# Do login
while message != "exit()":
message = input(">> ")
if message is not None and message is not "" and message is not "exit()":
hub_connection.send("SendMessage", [username, message])
hub_connection.stop()
Using package from aspnet core - SignalRAuthenticationSample ,
Example with Auth
import requests
from signalrcore.hub_connection import HubConnection
def input_with_default(input_text, default_value):
value = input(input_text.format(default_value))
return default_value if value is None or value.strip() == "" else value
def signalr_core_example_login(url, user, username_password):
response = requests.post(url, data={"email": user, "password": username_password})
return response.json()["token"]
login_url = input_with_default('Enter your server login url({0}):', "http://localhost:50746/account/token")
server_url = input_with_default('Enter your server url(default: {0}): ', "ws://localhost:50746/hubs/chat")
username = input_with_default('Enter your username (default: {0}): ', "mandrewcito@mandrewcito.com")
password = input_with_default('Enter your password (default: {0}): ', "Abc123.--123?")
# Login
token = signalr_core_example_login(login_url, username, password)
hub_connection = HubConnection(
server_url,
token=token,
negotiate_headers={"Authorization": "Bearer " + token})
hub_connection.build()
hub_connection.on("ReceiveSystemMessage", print)
hub_connection.on("ReceiveChatMessage", print)
hub_connection.on("ReceiveDirectMessage", print)
hub_connection.start()
message = None
while message != "exit()":
message = input(">> ")
if message is not None and message is not "" and message is not "exit()":
hub_connection.send("Send", [message])
hub_connection.stop()
Example with streamming
Using package from aspnet core - SignalRStreaming ,
import time
from signalrcore.hub_connection import HubConnection
def input_with_default(input_text, default_value):
value = input(input_text.format(default_value))
return default_value if value is None or value.strip() == "" else value
server_url = input_with_default('Enter your server url(default: {0}): ', "ws://localhost:57957/streamHub")
hub_connection = HubConnection(server_url)
hub_connection.build()
hub_connection.start()
time.sleep(10)
hub_connection.stream(
"Counter",
[10, 500],
lambda x: print("next callback: ", x),
lambda x: print("complete callback", x),
lambda x: print("error callback", x))
message = None
while message != "exit()":
message = input(">> ")
hub_connection.stop()
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
signalrcore-0.3.1.tar.gz
(8.4 kB
view hashes)
Built Distribution
Close
Hashes for signalrcore-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f267b1ba2ea53463c96130078ecaeaf11f6603cf4bf195007a1dd7f511257555 |
|
MD5 | 1b16d422d7a9e019898696932101bc63 |
|
BLAKE2b-256 | 1bb8fbde1602580e9d2e396dcad6f0937a91eacf1d2fc180af37b079ec22a9d0 |