Я пытаюсь, чтобы клиент Python RTC использовал глобальную переменную, чтобы я мог повторно использовать ее для нескольких функций.
Я использую это для проекта RTC, над которым я работал, у меня есть работающий js-клиент, но функции работают не так, как в python.Функции на стороне сервера и js-клиента являются моими собственными и не имеют параметров, и я надеюсь избежать необходимости использовать их на создаваемом мной клиенте python.
Я использовал aiortc Cli.py из их github в качестве основы для работы моего клиента на Python.Но я не запускаю его асинхронно, потому что я пытаюсь узнать и контролировать события.исходный код можно найти здесь, я имею в виду коды в строке 71-72 https://github.com/aiortc/aiortc/blob/master/examples/datachannel-cli/cli.py
это код, который я пытаюсь запустить правильно
I 'мы только вставили код, относящийся к моей текущей проблеме
import argparse
import asyncio
import logging
import time
from aiortc import RTCIceCandidate, RTCPeerConnection, RTCSessionDescription
from aiortc.contrib.signaling import add_signaling_arguments, create_signaling
pc = None
channel = None
def createRTCPeer():
print("starting RTC Peer")
pc = RTCPeerConnection()
print("created Peer", pc)
return pc
def pythonCreateDataChannel():
print("creating datachannel")
channel = pc.CreateDataChannel("chat")
функция createRTCPeer работает, как и предполагалось, с созданием объекта RTC, но мой pythonCreateDataChannel сообщает об ошибке, если для меня установлено значение "None "перед его использованием
AttributeError: у объекта 'NoneType' нет атрибута 'CreateDataChannel'
, и он сообщит
NameError:имя «канал» не определено
то же самое относится и к ПК, если я не установил его в глобальной области видимости перед рукой