Saravanan666/pypi-org huggingface dataset:
Package: smartscraper
SmartScraper: 简单、自动、快捷的Python网络爬虫Note: The origin developer of SmartScraper  isAlireza Mika， I only change a little code of AutoScraper.SmartScraper使页面数据抓取变得容易，不再需要学习诸如pyquery、beautifulsoup等定位包，我们只需要提供的url和数据给ta学习网页定位规律即可。一、安装pipinstallsmartscraper二、快速上手2.1 获取相似结果例如 我们想从豆瓣读书-小说页面获得20本书的书名和出版信息P1https://book.douban.com/tag/小说?start=0&type=TP2https://book.douban.com/tag/小说?start=20&type=T我们使用P1链接训练书名、出版信息这两个字段fromsmartscraperimportSmartScraper# 待训练的网页链接url='https://book.douban.com/tag/小说?start=0&type=T'#定义 想要的字段wanted_dict={"title":["活着"],"pub":["余华 / 作家出版社 / 2012-8-1 / 20.00元"]}# 训练/在url对应的页面中寻找wanted_dict规律scraper=SmartScraper()results=scraper.build(url,wanted_dict=wanted_dict)print(results)运行代码，采集到的results如下{'title':['活着','房思琪的初恋乐园','白夜行','索拉里斯星','鄙视',...],'pub':['余华 / 作家出版社 / 2012-8-1 / 20.00元','林奕含 / 北京联合出版公司 / 2018-2 / 45.00元','[日] 东野圭吾 / 刘姿君 / 南海出版公司 / 2013-1-1 / CNY 39.50','[波] 斯坦尼斯瓦夫·莱姆 / 靖振忠 / 译林出版社 / 2021-8 / 49.00元','[意] 阿尔贝托·莫拉维亚 / 沈萼梅、刘锡荣 / 江苏凤凰文艺出版社 / 2021-7 / 62.00',...]}使用刚刚训练的scraper尝试从P2链接获取书名和出版信息scraper.get_result_similar('https://book.douban.com/tag/小说?start=20&type=T')2.2 保存数据每次运行方法get_result_similar后可结合save一起使用，数据将以追加形式存入csv中。scraper.save(file_path='data.csv')2.3 保存模型训练的smartscraper模型可以保存，后续直接调用scraper.save('douban_Book.pkl')模型导入代码scraper.load('douban_Book.pkl')三、完整代码假设我们要采集豆瓣小说前10页的所有数据，代码如下fromsmartscraperimportSmartScraper# 网址规律template='https://book.douban.com/tag/小说?start={param}&type=T'# 待训练的网页链接train_url=template.format(param=0)#定义 想要的字段wanted_dict={"title":["活着"],"pub":["余华 / 作家出版社 / 2012-8-1 / 20.00元"]}# 训练/在url对应的页面中寻找wanted_dict规律scraper=SmartScraper()scraper.build(train_url,wanted_dict=wanted_dict)# 批量采集&存储forpninrange(1,11):url=template.format(param=(pn-1)*20)scraper.get_result_similar(url)scraper.save(file_path='data.csv')四、其他4.1 项目补充说明SmartScraper仅为了简化使用，对AutoScraper进行了小修改（几行代码）原创项目地址https://github.com/alirezamika/autoscraper4.2 相关课程如果您是经管人文社科专业背景，编程小白，面临海量文本数据采集和处理分析艰巨任务，个人建议学习《python网络爬虫与文本数据分析》视频课。作为文科生，一样也是从两眼一抹黑开始，这门课程是用五年时间凝缩出来的。自认为讲的很通俗易懂o(￣︶￣)o，python入门网络爬虫数据读取文本分析入门机器学习与文本分析文本分析在经管研究中的应用感兴趣的童鞋不妨 戳一下《python网络爬虫与文本数据分析》进来看看~4.3 自媒体B站:大邓和他的python公众号：大邓和他的python
Package: smart-search
Concept-SearchFor source codeThis the myGithub repo.Contact me for support and PRs are welcome.UsagePip install the package.$ pip3 install smart-searchNOTE: Please have the pickle file in the same folder as the python script in which you will use our pip package.Here i use theglove.6B.zipfile from Standfords Github repository from the hyperlink.SyntaxImport the library.>> import smart_searchCreate an object of the class, smart_search.model(). Say,functioncaller.>> functioncaller = smart_search.model()Now to convert a pdf to a list of lists containing page.no and words after stop word removal, we use the built in functiongetting_list_of_words(). This accepts 1 argument, i.e the path to the pdf and returns the required list to be fed to the model.>> pdf_list = functioncaller.getting_list_of_words('path to your pdf')Pass this list to the model along with the word you want to get the search result of using theperform_skip()function. This accepts 2 variables, i.e the list produced by the previous function and the word you want to search for and retuns the top 5 relevant search locations of the word you searched for.>> location[0:5] = perform_skip(pdf_list, input_word)You can use subprocesses library of python to navigate to the page if you want to.LICENSEMIT
Package: smartsheet-helper
smartsheet-helperSimple class that helps dealing with smarsheet api, like dealing with columin ids and typesit uses environment variables for keys and ids:SMARTSHEET_SHEET_ID=your_sheet_id
SMARTSHEET_ACCESS_TOKEN=your_secret_access_tokenDanjgo webhook handler example'''
from django.views.decorators.http import require_http_methods
from django.views.decorators.csrf import csrf_exempt
from django.http import JsonResponse@require_http_methods(["POST"])
@csrf_exempt
def handleWebhook(request):
#handle challenge
if("Smartsheet-Hook-Challenge" in request.headers):
res = {"smartsheetHookResponse": request.headers["Smartsheet-Hook-Challenge"]}
return JsonResponse(res)
data = json.loads(request.body)
# data = {
#     "nonce":"6939c036-b01b-1111-2222-4e085ef1a5a0",
#     "timestamp":"2023-11-05T13:07:26.115+00:00",
#     "webhookId":6847500251111108,
#     "scope":"sheet",
#     "scopeObjectId":6817504622273380,
#     "events":[
#         {
#             "objectType":"cell",
#             "eventType":"updated",
#             "rowId":5849931133364004,
#             "columnId":3996433355807364,
#             "userId":8583582333729092,
#             "timestamp":"2023-11-05T13:07:20.000+00:00"
#         }
#     ]
# }# do something

return JsonResponse({"result": "success"})'''
Package: smartsheet-python-sdk
Smartsheet Python SDKA library for connecting to theSmartsheet APIfrom Python applications.RequirementsThe SDK is compatible withactively supportedPython versions3.10,3.9,3.8,3.7.InstallationTo install usingpip:pipinstallsmartsheet-python-sdkGetting StartedTo get started with the Smartsheet Python SDK:SetSMARTSHEET_ACCESS_TOKENin your environment, using your Smartsheet API key. Find out more aboutAuthentication and Access Tokensin the Smartsheet API Documentation. You can generate an access token in Smartsheet UI under Account > Personal Settings > API Access.Install the Smartsheet Python SDK (see the installation instructions above)The following snippet shows how to create a Smartsheet client and perform some basic actions using the SDK. Ensure your Smartsheet user has access to at least one sheet.importsmartsheetsmart=smartsheet.Smartsheet()# Create a Smartsheet clientresponse=smart.Sheets.list_sheets()# Call the list_sheets() function and store the response objectsheetId=response.data[0].id# Get the ID of the first sheet in the responsesheet=smart.Sheets.get_sheet(sheetId)# Load the sheet by using its IDprint(f"The sheet{sheet.name}has{sheet.total_row_count}rows")# Print information about the sheetDocumentationUse the following resources to learn more about the SDK capabilities:Smartsheet Python SDK sample projectPython SDK documentationSmartsheet API DocumentationAdvanced TopicsFor details about logging, testing, how to use a passthrough option, and how to override HTTP client behavior,
seeAdvanced Topics.Developer AgreementReview theDeveloper Program Agreement.AcknowledgementsWe would like to thank the following people for their contributions to this project:Tim Wells -timwellswaScott Wimer -happybob007Steve Weil -seweilKevin Fansler -kfanslerNathan Armstrong -armstnp
Package: smartsheet-python-sdk-py39
This library is intended to simplify connecting to theSmartsheet
APIfrom Python
applications.System RequirementsThe SDK currently supports Python 2.7, 3.4, 3.5, 3.6, pypy, and pypy3.
The following packages are required.requestsrequests-toolbeltsixcertifipython-dateutilInstallationThe SDK can be installed by using a package manager (pip) or manually by
downloading the SDK directly from Git. These two steps are outlined
below.Install with pipIf unfamiliar with pip, please review thepip
documentation.This SDK’s Python package is calledsmartsheet-python-sdk. To
install using pip:$ pip installsmartsheet-python-sdkInstall manuallyTo install this SDK manually, download the source code fromGitHuband then run:$ python setup.py installGetting StartedGetting started with the Python SDK is easy:SetSMARTSHEET_ACCESS_TOKENin your environment. Find out more
about gettingdirect API
accessin the Smartsheet API Documentation.Install the Smartsheet Python SDK from thePython Package
Index, or by
using “pip install smartsheet-python-sdk”.Import the smartsheet module:import smartsheetRefer to theSmartsheet API
Documentationfor Python SDK usage examples.DocumentationThe SDK documentation can be viewed online athttp://smartsheet-platform.github.io/smartsheet-python-sdk/.ContributingIf you would like to contribute a change to the SDK, please fork a
branch and then submit a pull request. More infohere.SupportIf you have any questions or issues with this SDK please post on
StackOverflow using the tag“smartsheet-api”or contact us directly atapi@smartsheet.com.Release NotesEach specific release is available for download viaGithub.ChangelogSeeChangelog.
Package: smartsquash
smartsquashThis is still in testing phase.Makes daily git workflows easier, automates rebases or fixups.buildpoetryinstall--no-dev--no-root
poetrybuildinstallationpip3installsmartsquashusageusage:sq[-h][--target-branchTARGET_BRANCH][--repoREPO][--dry][-s][--no-add]optionalarguments:-h,--helpshowthishelpmessageandexit--target-branchTARGET_BRANCHSpecifybranchtotarget.Defaultis'master'--repoREPOSpecifyrepotomodify.Usespwdbydefault--dryRundry-s,--squashSquashsimilarcommitsonyourfeaturebranch--no-addDon'taddmodifiedfilestostagingarearun testspoetryruncoveragerun--source.-mpytestpoetryruncoveragereport
Package: smart-status-bar
DescriptionIt provides a smart status bar for loops. It can be used to display the progress of a long running operationInstallpip3 install smart-status-barUsageloop:
    """ Statements """
    smart_status_bar.status_bar(index, total, message)

where
    index : current iteration of our loop
    total : total number of iteration of out loop
    message : Unique message for each iterationExampleimport smart_status_bar 
import time

ITERATIONS = 50
for i in range(ITERATIONS):
	smart_status_bar.status_bar(i, ITERATIONS, f"This is iteration {i}")
	time.sleep(0.2)
Package: smart-string
# Smart String
Smart String is a Python 2.7 library to correctly parse code points (Unicode symbols with assigned
numeric value) in the Unicode basic multilingual plane (BMP) or in the supplementary multilingual
planes, and to form characters that consist of more than one code point.### Using the Smart String Library
The Smart String library exposes 3 main classes -CodePoint,SmartChar, andSmartStr.
TheCodePointclass represents a single Unicode code point, either in the BMP or in the supplementary
planes.
TheSmartCharclass represents a single graphical character. It can consist of 1 code point (letter
in the English Alphabet), or 2 code points (national flag symbol).
TheSmartStrclass represents a string containing a sequence of smart characters.### Running the example code
Go to the location of the example file in a terminal and run the example script.cd <smart-string package location>/smart_str/examplepython smart_str_example.py### Running the tests
To run the tests make sure that the pytest package is installed on your system.
Go to the location of the tests directory in a terminal and run the tests. You can run all the tests in
the tests directory, all the tests in a single module, or a single test in a module.cd <smart-string package location>/smart_str/testspytest .- Run all the tests in the tests directory.pytest test_code_point.py- Run all the tests in a single module.pytest test_code_point.py::test_code_point_utf_8_four_bytes- Run single test in a module.
Package: smart-superset
安装python环境sudoyuminstallgccgcc-c++libffi-develpython-develpython-pippython-wheelopenssl-develcyrus-sasl-developenldap-devel安装supersetexportFLASK_APP=supersetexportPYTHONPATH=$HOME/.superset:$PYTHONPATHpipinstallsmart-supersetconfigvim$PYTHONPATH/.superset/superset_config.py# Superset specific configROW_LIMIT=5000SUPERSET_WEBSERVER_PORT=8088# Flask App Builder configuration# You can generate a strong key using `openssl rand -base64 42`SECRET_KEY='YOUR_OWN_RANDOM_GENERATED_SECRET_KEY'# The SQLAlchemy connection string to your database backend# This connection defines the path to the database that stores your# superset metadata (slices, connections, tables, dashboards, ...).# Note that the connection information to connect to the datasources# you want to explore are managed directly in the web UISQLALCHEMY_DATABASE_URI='sqlite:////path/to/superset.db'SQLALCHEMY_DATABASE_URI='mysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>'SQLALCHEMY_DATABASE_URI='postgresql://<UserName>:<DBPassword>@<Database Host>/<Database Name>'# Flask-WTF flag for CSRF# WTF_CSRF_ENABLED = True# Add endpoints that need to be exempt from CSRF protection# WTF_CSRF_EXEMPT_LIST = []# A CSRF token that expires in 1 year# WTF_CSRF_TIME_LIMIT = 60 * 60 * 24 * 365# Set this API key to enable Mapbox visualizations# MAPBOX_API_KEY = ''importredisCACHE_CONFIG={'CACHE_TYPE':'redis','CACHE_REDIS_URL':'redis://:redis@smartchart@localhost:6379/3','CACHE_DEFAULT_TIMEOUT':86400,'CACHE_KEY_PREFIX':'SUPERSET_VIEW'}DATA_CACHE_CONFIG={'CACHE_TYPE':'redis','CACHE_REDIS_URL':'redis://:redis@smartchart@localhost:6379/3','CACHE_DEFAULT_TIMEOUT':86400,'CACHE_KEY_PREFIX':'SUPERSET_DATA'}EXPLORE_FORM_DATA_CACHE_CONFIG={'CACHE_TYPE':'redis','CACHE_REDIS_URL':'redis://:redis@smartchart@localhost:6379/3','CACHE_DEFAULT_TIMEOUT':86400,'CACHE_KEY_PREFIX':'SUPERSET_E'}FILTER_STATE_CACHE_CONFIG={'CACHE_TYPE':'redis','CACHE_REDIS_URL':'redis://:redis@smartchart@localhost:6379/3','CACHE_DEFAULT_TIMEOUT':86400,'CACHE_KEY_PREFIX':'SUPERSET_F'}Create an admin user in your metadata databasesupersetdbupgrade
supersetfabcreate-adminLoad some data to play with(option)supersetload_examplesCreate default roles and permissionssupersetinitstart a development web server on port 8088, use -p to bind to another portsupersetrun-p8088-h0.0.0.0--with-threads--reload--debugger生产环境启动gunicorn-w5\-kgevent\--worker-connections1000\--timeout120\-b0.0.0.0:8088\--limit-request-line0\--limit-request-field_size0\"superset.app:create_app()"生产启动ps-ef|grepsuperset|grep-vgrep|awk'{print "kill -9 "$2}'|sh
nohupgunicorn-w5-kgevent--worker-connections1000--timeout120-b0.0.0.0:8088--limit-request-line0--limit-request-field_size0"superset.app:create_app()"&
Package: smartswitchcase
BigQuery | Google cloud<==>Python library of implementation of Switch Case (SmartSwitchCase)SmartSwitchCaseis a simple library for use switch case statement.RequirementsPython >= 2.7must be installed.Installsmartswitchcaseis released on PyPI, so all you need is:$ pip install smartswitchcaseTo upgrade to latest version:$ pip install --upgrade smartswitchcaseUsageBasic UsagefromsmartswitchcaseimportSmartSwitchCase,Casevar=2deffirst():print("I'm ... 1")deftwo():print("I'm ... 2")# Initialisationswc=SmartSwitchCase(var)# Add caseswc.case(Case(1,first))swc.case(Case(2,two))# Add default statementswc.default(lambda:"I'm ... Default")# Runswc.exc()# >>> CONSOLE : I'm ... 2 <<<Advance UsagefromsmartswitchcaseimportSmartSwitchCase,Caseimportrandomobj=random.randint(1,11)deffirst():return"I'm ... 1"deftwo():return"I'm ... 2"# Initialisationswc=SmartSwitchCase(obj)# Add caseswc.case(Case(1,first))swc.case(Case(2,two))swc.case(Case(3,lambda:"I'm ... 3"))swc.case(Case(4,lambda:"I'm ... 4"))swc.case(Case(5,lambda:"I'm ... 5"))swc.case(Case(6,lambda:"I'm ... 6"))swc.case(Case(7,lambda:obj*7))swc.case(Case(8,lambda:888))swc.case(Case(9,lambda:999))# Add default statementswc.default(lambda:"I'm ... Default")# Runswc.exc()# If you statement return a result you can get her after executionresult=swc.result()# Show the resultprint(result)DocumentationSmartSwitchCase: Take one parameter (The statement value you want tested)CaseTake two parameters (value, func):value of casefunc is the execution function if case is matchProject structure:smartqwitchcase- source code of a packageexamples- working examplesContributeIf unsure, open an issue for a discussionCreate a forkMake your changeMake a pull requestHappy contribution!For support or coffee :)Author :Koffi Joel ONIPOH
Package: smarttap
SmartTAP: Smart card Transport Analysis PackageVersion: 1.0
Author: John Tasker
Contact:john_tasker@outlook.comLicense: GNU GPL V3.0This is the initial release of the SmartTAP package which is capable of
conducting data cleaning and preparation activities on public transport smart
card data. This package was developed using GoCard data provided by Translink
for the South-East Queensland, Australia public transport network.RUN PACKAGE
To run the software, open GUIModule.py using Python 3. A Tkinter GUI will
appear. A directory must be specified containing the smart card data in .csv
format (e.g. Aug15Pr.csv), a Routes.txt file (GTFS Routes.txt standard), a
Stops.txt file (GTFS Stops.txt standard). The directory can also contain a list
of commuters who will be used to filter all trip records. This file must be in
.csv format.SETTINGS
To specify the database name, input this into the provided box and click
‘Set Database Name’. The provided name must end in .db. By default the
database will be named ‘GoCard.db’.Operation/processing timings are set on by default. If you do not wish to
see timings click the ‘Time - ON’ button and it will change to ‘Time - OFF’.
The button will also change colour from green to red. To turn timing on
click the button again.The output window (lower section of GUI) will display the outputs of
operations/processing and will automatically scroll to the most recent
output. If you wish to clear the output window click the ‘Clear Output’
button. This will remove all text from the window.
Package: smarttasep
TASEP-SmarticlesOverviewTheSmartTaseppackage implements a Totally Asymmetric Simple Exclusion Process (TASEP) using reinforcement
learning (RL) agents. In this simulation, particles perceive their environment at each time step, and a neural network
decides their next action (move forward, up, or down) to maximize the total current. The repository employs Double Deep
Q Learning (DDQN) with a policy network and a target network that is updated using a soft update mechanism. Experience
replay is used to sample from a buffer of past experiences, facilitating learning.FeaturesTASEP simulation with RL agentsDouble Deep Q Learning (dDQN)Policy network and target network with soft updates(Prioritized) Experience replay for improved learningReal-time training visualization with pygame and matplotlibSaving trained networksLoading and running pretrained simulationsTesting learned policies interactivelyCustomizable reward functionsFilesClasses in TASEP-Smarticles:DQN.py: Neural network RL agent classGridEnvironment.py: Environment class that computes states, transitions, and rewardsTrainer.py: Wrapper class for training the network, saving, loading and running simulationsPlayground.py: Class for testing learned policies interactivelySetupInstall the package using pip:pipinstallsmarttasepUsing the packageImport the package:fromsmarttasepimportTrainer,EnvParams,Hyperparams,PlaygroundRun a training session:envParams=EnvParams(render_mode="human",length=128,width=24,moves_per_timestep=200,window_height=200,observation_distance=3,distinguishable_particles=True,initial_state_template="checkerboard",social_reward=True,use_speeds=True,sigma=10,allow_wait=True,invert_speed_observation=True)hyperparams=Hyperparams(BATCH_SIZE=32,GAMMA=0.85,EPS_START=0.9,EPS_END=0.05,EPS_DECAY=100_000,TAU=0.005,LR=0.001,MEMORY_SIZE=500_000)trainer=Trainer(envParams,hyperparams,reset_interval=100_000,ﬂtotal_steps=500_000,plot_interval=4000,new_model=True)trainer.train_and_save()Load a pretrained model and run a simulation:trainer=trainer.load()# shows a list of available models and prompts the user to choose onetrainer.run()Test a learned policy interactively:Playground()# shows a list of available models and prompts the user to choose oneAuthorJonas MärtensGitHub:https://github.com/jonasmaertensVersionCurrent Version: 0.1.0LicenseThis project is licensed under the MIT License - see the LICENSE.md file for details
Package: smartthings-rest
Smartthings-restNOTE! work in progressSmart and straightforward lib for controlling things withhttps://www.smartthings.com/Smartthings-restsimple json printout of allTurn device onTurn device offOffical smartthings docs# simple json printout of allfromsmartthings_restimportSmartThingsst=SmartThings(personal_access_token)print(st.devices())exportPAT="your_pat"python3hello_smartthings.pyUrls to add

https://api.smartthings.com/v1/devices/deviceId/status

https://api.smartthings.com/v1/devices/deviceId/components/main/capabilities/mediaInputSource/status

---
# Turn device on
https://api.smartthings.com/v1/devices/deviceId/commands

{
    "commands": [
        {
            "component": "main",
            "capability": "switch",
            "command": "on"
        }
    ]
}

# Turn device off
https://api.smartthings.com/v1/devices/deviceId/commands

{
    "commands": [
        {
            "component": "main",
            "capability": "switch",
            "command": "off"
        }
    ]
}

https://api.smartthings.com/v1/capabilities

https://api.smartthings.com/v1/capabilities/switch/1
Package: smart-tv-telegram
smart-tv-telegramDockerA Telegram Bot to stream content on your smart TV (also Chromecast, FireTV and other UPnP device)Demonstration videoFeatureStreaming, the bot will not have to download the entire file before playing it on your deviceYou can play anything if your device has the right codecYou can stream on any device that supports UPnP (AVTransport)Chromecast, Vlc (telnet api) and Kodi (xbmc http api) supportStreaming over HTTPWeb interface that plays videos in your browserNote: Chromecast (1st, 2nd and 3rd Gen.)only supports H.264 and VP8 video codecsNote: Most LG TVs with WebOS have an incorrect UPnP implementationHow-to setup (Release from pypi)Make sure you have an updated version of python, only the latest version will be supportedInstall smart-tv-telegram from pipDownload config.ini.example as config.iniEdit config.iniStart from python entrypointpython3-mpipinstall--upgradesmart-tv-telegram
curlhttps://raw.githubusercontent.com/andrew-ld/smart-tv-telegram/master/config.ini.example-oconfig.ini
nanoconfig.ini
smart_tv_telegram-cconfig.ini-v1How-to setup (Manual build)Make sure you have an updated version of python, only the latest version will be supportedDownload the repositoryBuild wheel packageInstall packageCopy config.ini.example to config.iniEdit config.iniStart from python entrypointgitclonehttps://github.com/andrew-ld/smart-tv-telegramcdsmart-tv-telegram
python3-mpipinstallwheel
python3setup.pysdistbdist_wheel
python3-mpipinstalldist/*.whl
cpconfig.ini.exampleconfig.ini
nanoconfig.ini
smart_tv_telegram-cconfig.ini-v1How-to setup (Docker)Copy config.ini.example to config.iniEdit config.iniBuild Docker imageStart Docker containercpconfig.ini.exampleconfig.ini
nanoconfig.ini
dockerimagebuild-tsmart-tv-telegram:latest.
dockerrun--networkhost-v"$(pwd)/config.ini:/app/config.ini:ro"-dsmart-tv-telegram:latestTroubleshootingQ:How do I use the web interface?A:Setenabledto1inweb_uiconfig block, and change thepasswordopen http://listen_ip:listen_port/static/index.htmlnow if you send a video in the bot on telegram you can choose to play it in the browserQ:My Firewall block upnp and broadcasting, how can use kodi without itA:Setxbmc_enabledto1and add your kodi device toxbmc_deviceslistQ:What is the format ofxbmc_devicesA:A List of Python Dict withhost,port, (and optional:usernameandpassword)example:[{"host": "192.168.1.2", "port": 8080, "username": "pippo", "password": "pluto"}]Q:How-To control vlc from this botA:setvlc_enabledto1and add your vlc device tovlc_deviceslistQ:What is the format ofvlc_devicesA:A List of Python Dict withhost,port, (and optional:password)example:[{"host": "127.0.0.1", "port": 4212, "password": "123"}]Q:How-To enable upnp on my device that use kodiA:followthis guide(you should enable remote control)Q:How do I get a token?A:From@BotFatherQ:How do I set up admins?A:You have to enter your user_id, there are many ways to get it, the easiest is to use@getuseridbotQ:How do I get an app_id and app_hash?A:https://core.telegram.org/api/obtaining_api_id#obtaining-api-idQ:The video keeps freezingA:Check the video bitrate, this bot supports maximum ~4.5Mb/s