Ito ang command na mdbus2 na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator
PROGRAMA:
NAME
mdbus2 - Interactive DBus introspection, interaction, at monitoring
SINOPSIS
mdbus2 [MGA OPSYON...] [ serbisyuhan mo ako [ objectpath [ paraan [ params... ] ] ] ]
mdbus2 -Oo naman
mdbus2 -sl
DESCRIPTION
Ang mdbus2 Ang command ay ginagamit upang galugarin at makipag-ugnayan sa mga serbisyo ng DBus sa iyong sistema bus
at Sesyon bus. Ang system-wide message bus ay umiiral nang isang beses lamang at naka-install sa marami
system bilang serbisyong "messagebus". Ang session message bus ay per-user-login (nagsimula
sa tuwing magla-log in ang isang user) at karaniwang nakatali sa iyong X11 session.
Sa pinakasimpleng anyo, ipinapakita ng mdbus2 ang mga magagamit na serbisyo sa napiling bus. Nabigyan ng a
serbisyo pangalan, ipapakita nito ang magagamit bagay na-export ng serbisyo. Nabigyan ng serbisyo
pangalan at isang bagay landas, ipapakita nito ang nakalantad pamamaraan, signal, at mga katangian ng
bagay.
Pagbibigay ng a paraan pangalan (At parameter), maaari kang tumawag ng mga pamamaraan sa bagay at makuha ang
pagbabalik halaga(S).
Sa pagpapakinig paraan, maaari mong obserbahan ang mga signal na ipinadala sa napiling bus.
Kasama rin ang isang interactive talukap ng alimango may tab-completion at command history.
Opsyon
--show-anonymous, -a
Ipakita din kakaiba (hindi kilalang) mga serbisyo sa bus.
--sistema, -s
Gamitin ang system bus sa halip na ang (default) session bus.
-show-pids, -p
Ipakita ang mga ID ng proseso ng UNIX.
--makinig, -l
Simulan ang listener mode, kung saan maaari mong obserbahan ang mga signal sa bus.
--interactive, -i
Magsimula ng interactive na shell.
--annotate-types, -t
I-annotate ang mga uri ng DBus.
PAGGAMIT
Upang mag-invoke ng isang paraan sa isang bagay na ipinatupad ng isang serbisyo, kailangan mong tukuyin ang
sumusunod na mga halaga:
1 serbisyo pangalan, halimbawa org.freesmartphone.ogsmd – Ang pangalan ng serbisyo ay nagpapakilala
ang proseso ng paghahatid ng isang bilang ng mga bagay. Ang bawat proseso na nakakabit sa
nakakakuha ang bus ng hindi bababa sa isang hindi natatangi (anonymous) na pangalan ng serbisyo na itinalaga, gaya ng
: 1.0. Mga natatanging pangalan, tulad ng org.freesmartphone.ogsmd, ay karaniwang ibinibigay sa
all-lowercase na reverse domain name notation.
2 bagay landas, halimbawa /org/freesmartphone/GSM/Device - Ang landas ng bagay
kinikilala ang isang konkretong bagay na inihahatid ng proseso. Karaniwang mga landas ng bagay
mukhang mga path ng file system.
3 paraan, halimbawa org.freesmartphone.GSM.Call.Initiate - Ang pangalan ng pamamaraan
kinikilala ang isang operasyon na bahagi ng interface (mga pamamaraan at signal)
ng isang bagay. Ginagamit ang mga pangalan ng pamamaraan CamelCase na may tuldok na notasyon.
4 parameter, halimbawa + 49123456 boses`. (Sa be inilarawan karagdagang).
HALIMBAWA
Alamin kung aling mga pangalan ng bus ang kasalukuyang nakarehistro sa system bus:
ugat@om-gta02:~# mdbus -s
: 1.0
: 1.1
: 1.2
: 1.42
: 1.47
: 1.60
: 1.61
org.bluez
org.freedesktop.Avahi
org.freedesktop.DBus
org.freesmartphone.frameworkd
org.freesmartphone.ogsmd
org.pyneo.muxer
Alamin kung aling mga bagay ang inihahatid ng isang partikular na serbisyo:
root@om-gta02:~# mdbus -s org.freesmartphone.frameworkd
/
/org
/org/freesmartphone
/org/freesmartphone/Framework
/org/freesmartphone/GSM
/org/freesmartphone/GSM/Device
/org/freesmartphone/GSM/Server
Alamin ang interface ng isang partikular na bagay:
root@om-gta02:~# mdbus -s org.freesmartphone.ogsmd /org/freesmartphone/GSM/Device
[METHOD] org.freesmartphone.GSM.Call.Activate( i:index )
[METHOD] org.freesmartphone.GSM.Call.ActivateConference( i:index )
[METHOD] org.freesmartphone.GSM.Call.HoldActive()
[METHOD] org.freesmartphone.GSM.Call.Initiate( s:number, s:type_ )
[METHOD] org.freesmartphone.GSM.Call.Release( i:index )
[METHOD] org.freesmartphone.GSM.Call.ReleaseAll()
[METHOD] org.freesmartphone.GSM.Call.ReleaseHeld()
[SIGNAL] org.freesmartphone.GSM.Call.CallStatus( i:index, s:status, a{sv}:properties )
[METHOD] org.freedesktop.DBus.Introspectable.Introspect()
[METHOD] org.freesmartphone.GSM.Device.CancelCommand()
[METHOD] org.freesmartphone.GSM.Device.GetAntennaPower()
[METHOD] org.freesmartphone.GSM.Device.GetFeatures()
[METHOD] org.freesmartphone.GSM.Device.GetInfo()
[METHOD] org.freesmartphone.GSM.Device.PrepareForSuspend()
[METHOD] org.freesmartphone.GSM.Device.RecoverFromSuspend()
[METHOD] org.freesmartphone.GSM.Device.SetAntennaPower( b:power )
[METHOD] org.freesmartphone.GSM.SIM.ChangeAuthCode( s:old_pin, s:new_pin )
[METHOD] org.freesmartphone.GSM.SIM.DeleteEntry( i:index )
[METHOD] org.freesmartphone.GSM.SIM.DeleteMessage( i:index )
[METHOD] org.freesmartphone.GSM.SIM.GetAuthStatus()
[METHOD] org.freesmartphone.GSM.SIM.GetImsi()
[METHOD] org.freesmartphone.GSM.SIM.GetMessagebookInfo()
[METHOD] org.freesmartphone.GSM.SIM.GetPhonebookInfo()
[METHOD] org.freesmartphone.GSM.SIM.GetServiceCenterNumber()
[METHOD] org.freesmartphone.GSM.SIM.GetSimCountryCode()
[METHOD] org.freesmartphone.GSM.SIM.GetSubscriberNumbers()
[METHOD] org.freesmartphone.GSM.SIM.RetrieveEntry( i:index )
[METHOD] org.freesmartphone.GSM.SIM.RetrieveMessage( i:index )
[METHOD] org.freesmartphone.GSM.SIM.RetrieveMessagebook( s:category )
[METHOD] org.freesmartphone.GSM.SIM.RetrievePhonebook()
[METHOD] org.freesmartphone.GSM.SIM.SendAuthCode( s:code )
[METHOD] org.freesmartphone.GSM.SIM.SetServiceCenterNumber( s:number )
[METHOD] org.freesmartphone.GSM.SIM.StoreEntry( i:index, s:name, s:number )
[METHOD] org.freesmartphone.GSM.SIM.StoreMessage( s:number, s:contents )
[METHOD] org.freesmartphone.GSM.SIM.Unlock( s:puk, s:new_pin )
[SIGNAL] org.freesmartphone.GSM.SIM.AuthStatus( s:status )
[SIGNAL] org.freesmartphone.GSM.SIM.NewMessage( i:index )
[METHOD] org.freesmartphone.GSM.Network.DisableCallForwarding( s:reason, s:class_ )
[METHOD] org.freesmartphone.GSM.Network.EnableCallForwarding( s:reason, s:class_, s:number, i:timeout )
[METHOD] org.freesmartphone.GSM.Network.GetCallForwarding( s:reason )
[METHOD] org.freesmartphone.GSM.Network.GetCallingIdentification()
[METHOD] org.freesmartphone.GSM.Network.GetNetworkCountryCode()
[METHOD] org.freesmartphone.GSM.Network.GetSignalStrength()
[METHOD] org.freesmartphone.GSM.Network.GetStatus()
[METHOD] org.freesmartphone.GSM.Network.ListProviders()
[METHOD] org.freesmartphone.GSM.Network.Register()
[METHOD] org.freesmartphone.GSM.Network.RegisterWithProvider( i:operator_code )
[METHOD] org.freesmartphone.GSM.Network.SetCallingIdentification( s:status )
[METHOD] org.freesmartphone.GSM.Network.Unregister()
[SIGNAL] org.freesmartphone.GSM.Network.SignalStrength( i:strength )
[SIGNAL] org.freesmartphone.GSM.Network.Status( a{sv}:status )
[METHOD] org.freesmartphone.GSM.PDP.ActivateContext( s:apn, s:user, s:password )
[METHOD] org.freesmartphone.GSM.PDP.DeactivateContext()
[METHOD] org.freesmartphone.GSM.PDP.GetCurrentGprsClass()
[METHOD] org.freesmartphone.GSM.PDP.ListAvailableGprsClasses()
[METHOD] org.freesmartphone.GSM.PDP.SetCurrentGprsClass( s:class_ )
[SIGNAL] org.freesmartphone.GSM.PDP.ContextStatus( i:index, s:status, a{sv}:properties )
[METHOD] org.freesmartphone.GSM.Test.Command( s:command )
[METHOD] org.freesmartphone.GSM.Test.Echo( s:echo )
Tumawag ng paraan sa isang interface:
root@om-gta02 ~ $ mdbus -s org.freesmartphone.ogsmd /org/freesmartphone/GSM/Device org.freesmartphone.GSM.Device.GetInfo
{ 'imei': '354651011234567',
'manufacturer': 'FIC/OpenMoko',
'model': '"Neo1973 GTA02 Naka-embed na GSM Modem"',
'rebisyon': '"HW: GTA02BV5, GSM: gsm_ac_gp_fd_pu_em_cph_ds_vc_cal35_ri_36_amd8_ts0-Moko8"'}
Gamitin ito sa mode ng pakikinig:
root@om-gta02:/local/pkg/fso/framework/framework# mdbus -s -l
nakikinig ng mga signal sa SystemBus mula sa serbisyong 'lahat', bagay na 'lahat'...
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u'org.pyneo.muxer'), dbus.String(u':1.6'), dbus.String(u''))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u':1.6'), dbus.String(u':1.6'), dbus.String(u''))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u':1.28'), dbus.String(u''), dbus.String(u':1.28'))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u'org.freesmartphone.frameworkd'), dbus.String(u''), dbus.String(u':1.28'))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u'org.freesmartphone.ogsmd'), dbus.String(u''), dbus.String(u':1.28'))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u':1.29'), dbus.String(u''), dbus.String(u':1.29'))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u'org.pyneo.muxer'), dbus.String(u''), dbus.String(u':1.29'))
[SIGNAL] org.freedesktop.DBus.NameOwnerBinago mula sa org.freedesktop.DBus /org/freedesktop/DBus
(dbus.String(u':1.30'), dbus.String(u''), dbus.String(u':1.30'))
[SIGNAL] org.freesmartphone.GSM.SIM.ReadyStatus mula sa :1.28 /org/freesmartphone/GSM/Device
(dbus.Boolean(False),)
[SIGNAL] org.freesmartphone.GSM.SIM.AuthStatus mula sa :1.28 /org/freesmartphone/GSM/Device
(dbus.String(u'SIM PIN'),)
[SIGNAL] org.freesmartphone.GSM.SIM.AuthStatus mula sa :1.28 /org/freesmartphone/GSM/Device
(dbus.String(READY ka na'),)
[SIGNAL] org.freesmartphone.GSM.SIM.ReadyStatus mula sa :1.28 /org/freesmartphone/GSM/Device
(dbus.Boolean(True),)
Gamitin ang mdbus2 online gamit ang mga serbisyo ng onworks.net