tootgroup.py Emulate group accounts on Mastodon an开源项目

我要开发同款
匿名用户2021年11月08日
27阅读
开发技术Python
所属分类应用工具、IM/聊天/语音工具
授权协议GPL-3.0 License

作品详情

tootgroup.py-emulategroupaccountsonMastodonandPleromaWhatisthis?

Somesocialmediaplatformsallowgroupsofuserstopostintoaunified"group"timeline/instance/whateveryouwanttocallit.ThisiscurrentlynotpossibleonMastodonorPleromawithoutgivingallmembersfulllogincredentialstoagroup.tootgroup.pyisanattempttosolvethisspecificusecase.

Howdoesitwork?

tootgroup.pyhastobesetuponacomputerandrunperiodically.ItreadsthenotificationsfromtheMastodon/Pleromaaccountitisconnectedtoandfiltersthemformessagestorepost.Therearetwomethodsofcreatingagrouppost.Oneorbothofthemcanbeenabledduringthesetupprocedure.

Publicmentionsofgroupmembersareboostediftheypreceedthegroup'snamewithanExclamationMarklike"!@mastodon"

tootgroup.pycanalsolookfordirectmessagesfromgroupmembers.Ifthegroupis@mentionedattheverybeginning,Themessagewillberepostedasanewpublictootoriginatingdirectlyfromthegroupaccount.Thestatustextaswellasmediafilesareincluded.Theoriginatinguserwillnotbeshownpublicly.(Itcanstillbeseenbyallgroupandinstanceadministratorstough!)

Ifbothrepostmethodsaredisabled,tootgroup.pywillstillrunbutnotrepostanything.

Buthowtosimplyuseit?

Writeamessagethatshouldbeboostedbythegroup:Justinclude"!@group_name"anywhereinthetoot.EXAMPLE:"OHAI!justfoundthat!@mastodonthingie!"

Writeamessagethatshouldappearasanewpostfromthegroup:Put"@group_name"attheverybeginningofadirect/privatemessage.EXAMPLE:"@mastodonHEREBETHEMESSAGETEXT"

Howtosetup?

Theeasiestwaytoinstalltootgroup.pyisviaPyPI,thePythonPackageIndex.Usepip3installtootgroup.pytoinstallitaswellasallitsdependencies.

ItisalsopossibletodownloadthescriptmanuallyfromtheGitHubrepositoryathttps://github.com/oe4dns/tootgroup.pyInthatcasethenecessarydependencieshavetobeprovidedtoo:

tootgroup.pyrequireshttps://github.com/halcy/Mastodon.pyaswellashttps://github.com/ActiveState/appdirstorun.Installthemviayouroperatingsystem'spackagemanager,piporevenmanually.

tootgroup.pywillguideyouthroughsetupbyaskingallinformationitneedswhenyourunitfromthecommandlineforthefirsttime.BeingsomewhatcomfortablewithPythonscriptingandthecommandlineingeneralmighthelpifdifficultiesshouldappear.

YouneedanaccountonanyMastodonorPleromainstancethatwillactasyourgroupaccount.Thinkaboutifyoushouldmarkitasa"Bot".

Runtootgroup.pyfromthecommandline.

tootgroup.pywillaskyouforallneededsetupdataandtrytogetthemrightbyconnectingtotheMastodon/Pleromaserver.Ifitcannotdoso,itwilltellyouandyoucanretry.Whensuccessful,tootgroup.pywillwritetheconfigurationtoitstootgroup.conffileandreaditfromtherenexttimeyourunthescript.

Theplaceforstoringconfigurationisoperatingsystemdependentbutwillbeshownduringthefirst-run/setupphase.Alocaltootgroup.conffileplacednexttothetootgroup.pyscriptwilloverridethesesettingsthoughandcanbeusedfordevelopmentortestingpurposes.

Ifyouwanttosetuptootgroup.pyformorethanonegroup,youcanrunitagainwhilespecifyingthe"--groupGROUP_HANDLE"flag.Thiswillthengenerateanindependentconfigurationthatwillbereadeachtimeyoucalltootgroup.pyusingthisname.Ifyoudon'tspecifyanygroupname,thehandle"default"iscreatedandusedautomatically

Testthefuncionalitybysendingdirectmessagesand"!@mentions"toyourgroupwhilerunningtootgroup.pymanually.Seeifthingsworkasexpected.Thescriptwillprintanaccordingmessageaftereachsuccessfulrun.Ifeverythingworks,runthescriptperiodicallyviacronandenjoygroop-tooting!

Hereisanexampleforacrontabentrythatrunstootgroup.pyeverytwominutes:

*/2****/path/to/tootgroup.py--groupdefault

Thereisalsothe"-d"or"--dry-run"commandlineflagthatpreventsanytoots.Youcanuseittotestwhatwouldbepostedbythescript.

Use"-h"or"--help"formoreinformationaboutallavailableoptions

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论