Flutter ZEBRA mobile printer ZQ521 stuck when print multiple image(ZPL) - flutter

Im developing a Flutter app that need to print selected image with mobile printer (ZEBRA ZQ521).
Generated ZPL string are works on http://labelary.com/viewer.html.
But mobile printer (ZQ521) totally stuck when printing (sometimes goes smooth).
error : Caused by: java.io.IOException: Bluetooth LE Write timed out
is it my ZPL string are too long? please help.
my zpl string:
^XA
~DGimg5.GRF,5126,22, FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFE7FFFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFFCFC78607FFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFF0FFCB303FFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFF3FFC33807FFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFE06338C803FFFFFC7FFFFFFFE
FFFFFFFFFFFFFFFFFFFE7FF3CFE01FFFFFE1FFFFFFFE
FFFFFFFFFFFFFFFFFFFC380FFFC01FFFFFF1FFFFFFFE
FFFFFFFFFFFFFFFFFFFCF338FFE00FFFFFF87FFFFFFE
FFFFFFFFFFFFFFFFFFFFFBF03FFFFFFFFFFC3FFFFFFE
FFFFFFFFFFFFFFFFFFC1F1F03FFFFFFFFFFC1FFFFFFE
FFFFFFFFFFFFFFFFFC000000187C19FFFFF80FFFFFFE
FFFFFFFFFFFFFFC000000000000000001CFFFFFFFFFE
FFFFFFFFFFFFFEC00000000000000000000FFFFFFFFE
FFFFFFFFFFFFFF80000000000000000000007FFFFFFE
FFFFFFFFFFFFE0000000000000000000000003FFFFFE
FFFFFFFFFFFFF80000000000000000000000007FFFFE
FFFFFFFFFFFFFFF000000000000000000000007FFFFE
FFFFFFFFFFFFFFE000000000000000000000003FFFFE
FFFFFFFFFFFFFFC000000000000000000000003FFFFE
FFFFFFFFFFFFFF8000000000000000000000003FFFFE
FFFFFFFFFFFFF80000000000000000000000007FFFFE
FFFFFFFFFFFFFFFF00000000000000000000007FFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC000007FFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF50007FFFFE
FFFFFFFFFFFFFFFF8100000000000FE7FFFFF07FFFFE
FFFFFFFFFFFF80000000000000000400000407FFFFFE
FFFFFFFFFFC000040300000000000C00000000FFFFFE
FFFFFFFFFFE1000006000000000000000000007FFFFE
FFFFFFFFFFC0000404400000000008000000007FFFFE
FFFFFFFFFFC0000000D80000000000000000003FFFFE
FFFFFFFFFFC0000000F80000000000000000003FFFFE
FFFFFFFFFFC91000007A0000000000000000003FFFFE
FFFFFFFFFFC91000009E0000000000000000003FFFFE
FFFFFFFFFFCF0000009E0000000000000000003FFFFE
FFFFFFFFFFCF000001B60000000000000000001FFFFE
FFFFFFFFFFCF000000970000080001000000001FFFFE
FFFFFFFFFFEF2000029F0000080001000000001FFFFE
FFFFFFFFFFFF2000039F0000080001001000001FFFFE
FFFFFFFFFFFEA00003530000080001003000001FFFFE
FFFFFFFFFFFF2000061B8000080009001800001FFFFE
FFFFFFFFFFEF2000060BA000080008001800001FFFFE
FFFFFFFFFFFF200006038000080008001800001FFFFE
FFFFFFFFFFFFA00002038000080008000000001FFFFE
FFFFFFFFFFFFE00000038000080005000000001FFFFE
FFFFFFFFFFFFE00000438000080005000000001FFFFE
FFFFFFFFFFFFE00000618040280025000000001FFFFE
FFFFFFFFFFFFE0000047B040280025C00000001FFFFE
FFFFFFFFFFFFE40001251040280025000000001FFFFE
FFFFFFFFFFFFE40001A51040280025000000001FFFFE
FFFFFFFFFFFFE40001A53040388024000000003FFFFE
FFFFFFFFFFFFE40005A41040388004000000003FFFFE
FFFFFFFFFFFFF00007A41040388004000000003FFFFE
FFFFFFFFFFFFF00007BD1040348004600000003FFFFE
FFFFFFFFFFFFFE0007BDBB4064801760000001FFFFFE
FFFFFFFFFFFFFF900735BFC0648ED778000083FFFFFE
FFFFFFFFFFFFF7FFFFFFFFC06880877FFEFFDFFFFFFE
FFFFFFFFFFFFFFF803FFFFFFFFFFFFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFFE
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFFFFE
FFFFF8FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE07FFFFE
FFFFFFE3FFFFFFFFFFFFFFFFFFFFFFFFFFFD007FFFFE
FFFFFC7FFFFFFF83EFFFFFFFFFFFFFFFD911017FFFFE
FFF017FFFFFFFF8007FFFFFE75FFFFFFC201007FFFFE
FFFFFFFFFFFFFF0003FFFF581429FFFFC200007FFFFE
FFFFFFFFFFFFFF8003F87700102BFFFFC200007FFFFE
FFFFFFFFFFFFFFD803F033001021FFFEC20200FFFFFE
FFFFFFFFFFCFFF8003FF3B001001FFFEC20700FFFFFE
FFFFFFFFF80FFFD803FF3F10100FFFFEC20300FFFFFE
FFFFFFFF000FFFFF03F89F101001FFFF431100FFFFFE
FFFFFFF00007FFF803F89E50300BFFFF63B900FFFFFE
FFFFFC000007FFFD63F91F10210FFFFDD3BB01FFFFFE
FFFF00000007FFFFEBF81E00210BFFFDD3FF05FFFFFE
FFE000000007FFFFEBF89E00210FFFFFD3FE05FFFFFE
F00000000007FFFFE3FD9E00210FFFFFFFFE0DFFFFFE
000000000007FFFEE7FF9E50210FFFFFFFFE0BFFFFFE
000000000007FFFFEFFF9E50210FFFFFFFFE0BFFFFFE
000000000007FFFFF7FF9E50210FFFFFA7FF1BFFFFFE
000000000007FFFFF7DF9E40210FFFFFB7FF1BFFFFFE
000000000007FFFFEBFDAC20200FFFFFFBFE57FFFFFE
000000000007FFFFFBFDEC22200FFFFFFBFF7FFFFFFE
000000000007FFFFFFF5FC22200FFFFFFFFFFFFFFFFE
000000000007FFFFFFF5FC62201FFFFFFFFFFFFFFFFE
000000000007FFFFFFF5FC62201FFFFFFFFEFFFFFFFE
000000000003FFFFFFFDFC0A205FFFFFFFFEFFFFFFFE
000000000003FFFFFFFDFC4A205FFFFFFFFFFFFFFFFE
000000000003FFFFFFFDFDE2207FFFFFFFFFFFFFFFFE
000000000007FFFFFFFFEEDA606FFFFFDFFDDFFFFFFE
000000000003FFFFFFFFFEDA603FFFFFFFFFFFFFFFFE
000000000003FFFFFFFFFFDA603FFFFFFFFFFFFFFFFE
000000000003FFFFFFFFFFDA603FFFFFFFFFFFFFFFFE
000000000003FFFFFFFFDFDA603FFFFFBFFFFFFFFFFE
000000000003FFFFFFFFFEDA629FFFFFFFFFFFFFFFFE
000000000003FFFFFFFFFEDA46DFFFFFFFF7FFFFFFFE
000000000003FFFFFFFFFFFA67DFFFFFFFF7FFFFFFFE
000000000003FFFFFFFFFFFC57FFFFFFFFFFFFFFFFFE
000000000003FFFFFFFFFFFED7FFFFFFFFFFFFFFFFFE
000000000003FFFFFFFFFFFFD3FFFFFFFFEFFFFFFFFE
000000000001FFFFFFFFFFFFD3FFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFD77FFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFE5F7FFFFFFFBFFFFFFFFE
000000000001FFFFFFFFFFFE5DFFFFFFFFBFFFFFFFFE
000000000001FFFFFFFFFFFFC9FFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFD5FFFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFCFFFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFCFFFFFFFFEFFFFFFFFFE
000000000001FFFFFFFFFFFFCF7FFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFE
000000000001FFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFE
000000000000FFFFFFFFFFFFDFFFFFFFFFFFFFFFFFFE
000000000000FFFFFFFFFFFFDBFFFFFFFFF07FFFFFFE
000000000000FFFFFFFFFFFFFFFFFFFFFFF007FFFFFE
000000000000FFFFFFFFFFFFFFFFFFFFFFE0003FFFFE
000000000000FFFFFFFFFFFFFFFFFFFFFF800003FFFE
000000000000FFFFFFFFFFFFFFFFFFFFFF8000003FFE
000000000000FFFFFFFFFFFFFFFFFFFFFF00000003FE
000000000000FFFFFFFFFFFFFFFFFFFFFE00000003FE
000000000000FFFFFFFFFFFFFFFFFFFFF800000003FE
000000000000FFFFFFFFFFFFFFFFFFFFE400000003FE
000000000000FFFFFFFFFFFFFFFFFFFFE000000003FE
000000000000FFFFFFFFFFFFFFFFFFFFC000000007FE
000000000000FFFFFFFFFFFFFFFFFFFFC000000007FE
000000000000FFFFFFFFFFFFFFFFFFFF8000000007FE
000000000000FFFFFFFFFFFFFFFFFFFF0000000027FE
000000000000FFFFFFFFFFFFFFFFFFFE0000000027FE
000000000000FFFFFFFFFFFFFFFFFFF60000000067FE
0000000000007F07FFFFFFFFFFFFFFFC00000000FFFE
0000000000007F03FFFFFFFFFFFFFFF0000000009FFE
0000000000007E00FE7EFFFFFFFFFFE0000000019FFE
0000000000007C00387F7FFFFFFFFF0000000000BFFE
0000000000007C00001FEFFFFFFFFE00000000027FFE
0000000000007C000003FFFFFFFFF000000000067FFE
0000000000007C000000FFFFFFFF8000000000007FFE
000000000000780000001FFFFFF8000000000000FFFE
0000000000007000000007FFFE20000000000002FFFE
0000000000007200000000FE0000000000000003FFFE
00000000000060000000043F0000000000000003FFFE
000000000001F20000001C0FE000000000000007FFFE
000000000001CF0000007081FC00000000000007FFFE
000000000006BF600000E0007F0000000000000FFFFE
000000000006EFF0000300000FE000000000001FFFFE
0000000000017FFC0006000003F800000000001FFFFE
000000000003FFFF00180000087E00000000003FFFFE
0000000000017FFB80600000000F80000000003FFFFE
0000000000005FFA00C000000007F0000000007FFFFE
0000000000003FE8020000000000F8000000007FFFFE
0000000000000FF00C00000000003E00000000FFFFFE
00000000000003C01000000000000F80000000FFFFFE
000000000300000060000000000003E0000003FFFFFE
0000000003000001C1010000000000F8000013FFBFFE
0000000006000003000000000000007C000003FFFFFE
000000001800000E000000000000001E000007FFFFFE
0000000030000038000000000000000F80000FFFFFFE
00000000E00000600000000000000003C0000FFFFFFE
00000001803801C00000000000000001A0001FFFFFFE
0000000600FF0700000000000000000060003FFFFFFE
0000000EFFEFFC00000000000000000030003FFFFFFE
00000031FFFFF00000000000000000001C007FFFFFFE
000000C09FFFFC0000000000000000000E007FEFFFFE
000003FFFFFFFF8000000000000000000700FFFFFFFC
000007FFFFFFFFE000000000000000000781FFFFFFFC
00001CFFFFFFFFF0000000000000000003C1FFFFFFFE
000031FFFFFFFFFC000000000000000003C3FFFFFFFE
0000E7FFFFFFFFFE000000000000000001E3FFFFFFFC
00038FFFFFFFFFFF000000000000000008F7FFFFFFFC
000E1FFFFFFFFFFFC00000000000000005F7FFFFFFFE
00183FFFFFFFFFFFE000000000000000007FFEFFFFFE
00707FFFFFFFFFF7F800000000000000007FFFFFFFFE
01C07FFFFFFFFFE7F800000000000000007FF5FBFFFE
0700FFFFFFFFFFE7FE00000000000000007FF0FFFFFE
0C00FFFFFFFFFFF9FF00000000000000007FE83FFFFE
30007FFFFFFFFF00FF00000000000000007FE05FFFFE
E0007FFFFFFFFF40FF8000000000000000FFD07FFFF6
C0007FFFFFFFFF01FFC000000000000000FFE07FFFF6
80003FFFFFFFFFE27FE000000000000000FFC0FFFFEE
80001FFFFFFFFC383FE006000000000001FFC13FFFEE
00001FFFFFFFFC393FF000000000000001FFE017FFDE
00008FFFFFFFFFF3BFF800000000000003FFFC06FFDE
00000FFFFFFFFFFFFFF800000000000007FFFE06FFDE
000003FFFFFFFFFFFFFC0000000000000FFFFE0DFFDE
000000FFFFFFCFFFFFFC0000000000000FFFFF0DFFBE
0000000FFFFFFFFFFFFC0000000000001FDFFFCDFFBE
00000203FFFFE7FFFFFF8040000000003F9FFFFBFFBE
00000000FFFFF7FFFFFF00C0000000003F1FFFFBFFBE
000000003FFFFFFFFFFE000003000000FF1FFFF3FF7E
000000001FFFFFFFFFFE000000000000FE1FFFF7FF7E
000000000FFFFFFFFFFE000000000000FC1FFFE7FF68
0000000003FFFFFFFFFE000000000001FC1FFFEFFF00
0000000001FFFFFFFFFC000000800001F81FFFCFFE00
0000010001FFFFFFFFFC000401800003F01FFFCFFE00
0000000100FFFFFFFFFC000000000003E03FFF9FFE00
00000000007FFFFFFFF800000000000FE03FFF9FFE00
00000000003FFFFFFFF800000000003FC07FFF9FFC00
00000000001FFFFFFFF800000000003FC05FFF3FFC00
00000000001FFFFFFFE000000000007FC09FFF3FFC00
00000000000FFFFFFFE000000000007FE69FFF7FFC00
000000100007FFFFFFC000000000007FE3BFFE7FF800
800000100007FFFFFF000000000000FFE93FFE7FF800
000000000003FFFFFE000000400000FFF07FFCFFF800
000000000000FFFFF8000000000001FFE8FFFCFFF800
0000000000047FFFE0000000000003FFCF7FF8FFF000
0000000000001FFF80000000000003FFDFFFF9FFF000
000000000000016000000000100001FFDFFFFBFFF000
000000000000004000000000100001FFBFFFF3FFF000
000000000000000010000000000003FBFFFFF3FFE000
000000000000000000000000000003FB7FFFE7FFE000
000000000000000000000000000007F0FFFFE7FFE000
00000000000000000000000000000780FFFFC7FFE000
00000000000000000000000000002F80FFFFCFFFC000
0000000002000000000000000000FF00DFFFCFFFC000
0000000000000000000200000000FF00C7FF9FFFC000
0000000000000000000000000000FE0101FF9FFF8000
0008000040000000000000000001FC0100FF3FFF8000
0000000000000000000000000001FC03007F3FFF8000
000000000000C000000000000001F802007E3FFF8000
0000000000000000010000000001F006007E3FFF0000
0000000000000000010000000001F00400FC7FFF0000
0000000000000000000000000001E00C00FCFFFF0000
000000000000000000000000003BE01800FCFFFF0000
700000000000000000000000007FC01800F8FFFE0000
700000000000000000000000007FC01000F9FFFE0000
600000000000000000000000007F80200071FFFE0000
00000000000000000000000600FFC0600079FFFC0000
00000000000000000000000701FFF040007BFFFC0000
00000000000000000003000303FFF88000FBFFFC0000
00010000000000000003000007FFFE8000FBFFF80000
0000000000000000000100101FFFFF8001DB9FF80000
0000010000000000000118031FFFFF8001FB8FF80000
0000000000000000000018073FFFFFE003FB83F00000
000000200000000000000004BFFFFFF803BB03F00000
0000000000000000000000887FFFFFFC07FB80F00000
^FO150,150^XGR:img5.GRF,1,1^FS
^XZ

BTLE on zebra printers is meant to be used just to configure the printer, not to print labels, so it has a low timeout and a slow transmission speed.
Not a Flutter expert at all, but all the mobile printers should have the BT Classic, which should allow you to print labels, so you might check if you can switch to that on the printing call you're doing from your app.
You can also check what BT type the printer is set on by sending the following command
! U1 getvar "bluetooth.le.controller_mode"
and you can set it to use Classic BT sending this command
! U1 setvar "bluetooth.le.controller_mode" "classic"
(Note that all these commands need a new line after the command itself).
Have a look here to see how to send this command

Related

Problem with midi setup on Raspberry Pi with midi board for RPi

I bought this one from osa electronics:
https://www.osaelectronics.com/product/midi-board-for-raspberry-pi/
I followed the instructions here on how to set it up:
https://www.osaelectronics.com/learn/setting-up-raspberry-pi-for-midi/
After following the setup and running this in command line:
python
import mido
mido.get_output_names()
It outputs this which seems to be correct:
['Midi Through:Midi Through Port-0 14:0', 'f_midi:f_midi 24:0']
as well as when I run this from command line:
amidi -l
outputs this:
Dir Device Name
IO hw:2,0 f_midi
However when I run some test applications from their webapge I get no input or output.
like this one:
import mido
from mido import MidiFile
from mido import MetaMessage
port = mido.open_output('f_midi')
mid = MidiFile('mymidifile.mid')
while True:
for msg in MidiFile('mymidifile.mid').play():
port.send(msg)
or from this one (I tried to print the msg but it wont print it even. So doesnt seem to step into the while loop but no errormessages)
import mido
import pigpio
from numpy import interp
pi1 = pigpio.pi()
port = mido.open_input('f_midi') # open USB port
while True:
try: # This filters out all non-note data
for msg in port.iter_pending(): # if there is a message pending
print(msg)
if(msg.type == 'note_on'): # if it is Note On message
out = interp(msg.velocity, [0, 127], [0, 255])
#scale velocity from 0-127 to 0-255
# filter the data by note number
if(msg.note == 53):
pi1.set_PWM_dutycycle(2, out)
elif(msg.note == 55):
pi1.set_PWM_dutycycle(3, out)
elif(msg.note == 57):
pi1.set_PWM_dutycycle(4, out)
else: # if the message is not Note On (e.g. Note Off)
if(msg.note == 53):
pi1.set_PWM_dutycycle(2, 0)
elif(msg.note == 55):
pi1.set_PWM_dutycycle(3, 0)
elif(msg.note == 57):
pi1.set_PWM_dutycycle(4, 0)
except AttributeError as error:
print("Error excepted")
pass
I noticed there is some problems with pigpio daemon
After I have been downloading and installed from this page:
http://abyz.me.uk/rpi/pigpio/download.html
And then try to start the daemon with:
sudo pigpiod
I get this errormessage:
bind to port 8888 failed (Address already in use) Can't initialise
pigpio library
However I have also been running through with this in command line:
aplaymidi -p f_midi myMidiTune.mid
No errormessage but no midioutput to my digital piano ...
How can I debug this?

remote server color doesn't look correct

I use ssh to login remote server quite often and on the server I'll use tools like emacs, git, tmux, etc. I noticed that the color on the remote server is very ugly compared with local machine. Especially for emacs, I want to use solarize theme but on the remote server it doesn't really show the correct color.
Does anyone know how to improve the color on remote server?
I am using item2 and when running infocmp I got the following results:
# Reconstructed via infocmp from file: /opt/sw/python/20201012/anaconda3/envs/i38/share/terminfo/x/xterm-256color
xterm-256color|xterm with 256 colors,
am, bce, ccc, km, mc5i, mir, msgr, npc, xenl,
colors#0x100, cols#80, it#8, lines#24, pairs#0x10000,
acsc=``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[2J, cnorm=\E[?12l\E[?25h, cr=\r,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A,
cvvis=\E[?12;25h, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[J, el=\E[K,
el1=\E[1K, flash=\E[?5h$<100/>\E[?5l, home=\E[H,
hpa=\E[%i%p1%dG, ht=^I, hts=\EH, ich=\E[%p1%d#,
il=\E[%p1%dL, il1=\E[L, ind=\n, indn=\E[%p1%dS,
initc=\E]4;%p1%d;rgb\:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\E\\,
invis=\E[8m, is2=\E[!p\E[?3;4l\E[4l\E>, kDC=\E[3;2~,
kEND=\E[1;2F, kHOM=\E[1;2H, kIC=\E[2;2~, kLFT=\E[1;2D,
kNXT=\E[6;2~, kPRV=\E[5;2~, kRIT=\E[1;2C, ka1=\EOw,
ka3=\EOy, kb2=\EOu, kbs=^H, kc1=\EOq, kc3=\EOs, kcbt=\E[Z,
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
kdch1=\E[3~, kend=\EOF, kent=\EOM, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf13=\E[1;2P, kf14=\E[1;2Q,
kf15=\E[1;2R, kf16=\E[1;2S, kf17=\E[15;2~, kf18=\E[17;2~,
kf19=\E[18;2~, kf2=\EOQ, kf20=\E[19;2~, kf21=\E[20;2~,
kf22=\E[21;2~, kf23=\E[23;2~, kf24=\E[24;2~,
kf25=\E[1;5P, kf26=\E[1;5Q, kf27=\E[1;5R, kf28=\E[1;5S,
kf29=\E[15;5~, kf3=\EOR, kf30=\E[17;5~, kf31=\E[18;5~,
kf32=\E[19;5~, kf33=\E[20;5~, kf34=\E[21;5~,
kf35=\E[23;5~, kf36=\E[24;5~, kf37=\E[1;6P, kf38=\E[1;6Q,
kf39=\E[1;6R, kf4=\EOS, kf40=\E[1;6S, kf41=\E[15;6~,
kf42=\E[17;6~, kf43=\E[18;6~, kf44=\E[19;6~,
kf45=\E[20;6~, kf46=\E[21;6~, kf47=\E[23;6~,
kf48=\E[24;6~, kf49=\E[1;3P, kf5=\E[15~, kf50=\E[1;3Q,
kf51=\E[1;3R, kf52=\E[1;3S, kf53=\E[15;3~, kf54=\E[17;3~,
kf55=\E[18;3~, kf56=\E[19;3~, kf57=\E[20;3~,
kf58=\E[21;3~, kf59=\E[23;3~, kf6=\E[17~, kf60=\E[24;3~,
kf61=\E[1;4P, kf62=\E[1;4Q, kf63=\E[1;4R, kf7=\E[18~,
kf8=\E[19~, kf9=\E[20~, khome=\EOH, kich1=\E[2~,
kind=\E[1;2B, kmous=\E[<, knp=\E[6~, kpp=\E[5~,
kri=\E[1;2A, mc0=\E[i, mc4=\E[4i, mc5=\E[5i, meml=\El,
memu=\Em, mgc=\E[?69l, oc=\E]104\007, op=\E[39;49m, rc=\E8,
rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\EM,
rin=\E[%p1%dT, ritm=\E[23m, rmacs=\E(B, rmam=\E[?7l,
rmcup=\E[?1049l\E[23;0;0t, rmir=\E[4l, rmkx=\E[?1l\E>,
rmm=\E[?1034l, rmso=\E[27m, rmul=\E[24m,
rs1=\Ec\E]104\007, rs2=\E[!p\E[?3;4l\E[4l\E>, sc=\E7,
setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
sgr=%?%p9%t\E(0%e\E(B%;\E[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m,
sgr0=\E(B\E[m, sitm=\E[3m, smacs=\E(0, smam=\E[?7h,
smcup=\E[?1049h\E[22;0;0t,
smglr=\E[?69h\E[%i%p1%d;%p2%ds, smir=\E[4h,
smkx=\E[?1h\E=, smm=\E[?1034h, smso=\E[7m, smul=\E[4m,
tbc=\E[3g, u6=\E[%i%d;%dR, u7=\E[6n,
u8=\E[?%[;0123456789]c, u9=\E[c, vpa=\E[%i%p1%dd,
Make sure your terminal type is set to xterm-256color in Preferences > Profiles > Terminal > Report Terminal Type.
https://iterm2.com/faq.html
Q: How do I get 256 color mode working in vim?
A: The recommended way is to set your terminal type to xterm-256color in Preferences > Profiles > Terminal > Report Terminal Type. You may also need to put set background=light or set background=dark in your .vimrc.

An error in my code to be a simple ftp

I met an error when running codes at the bottom. It's like a simple ftp.
I use python2.6.6 and CentOS release 6.8
In most linux server, it gets right results like this:(I'm very sorry that I have just sign up and couldn't )
Clinet:
[root#Test ftp]# python client.py
path:put|/home/aaa.txt
Server:
[root#Test ftp]# python server.py
connected...
pre_data:put|aaa.txt|4
cmd: put
file_name: aaa.txt
file_size: 4
upload successed.
But I get errors in some server(such as my own VM in my PC). I have done lots of tests(python2.6/python2.7, Centos6.5/Centos6.7) and found this error is not because them. Here is the error imformation:
[root#Lewis-VM ftp]# python server.py
connected...
pre_data:put|aaa.txt|7sdfsdf ###Here gets the wrong result, "sdfsdf" is the content of /home/aaa.txt and it shouldn't be sent here to 'file_size' and so it cause the "ValueError" below
cmd: put
file_name: aaa.txt
file_size: 7sdfsdf
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 10699)
Traceback (most recent call last):
File "/usr/lib64/python2.6/SocketServer.py", line 570, in process_request_thread
self.finish_request(request, client_address)
File "/usr/lib64/python2.6/SocketServer.py", line 332, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/usr/lib64/python2.6/SocketServer.py", line 627, in __init__
self.handle()
File "server.py", line 30, in handle
if int(file_size)>recv_size:
ValueError: invalid literal for int() with base 10: '7sdfsdf\n'
What's more, I found that if I insert a time.sleep(1) between sk.send(cmd+"|"+file_name+'|'+str(file_size)) and sk.send(data) in client.py, the error will disappear. I have said that I did tests in different system and python versions and the error is not because them. So I guess that is it because of some system configs? I have check about socket.send() and socket.recv() in python.org but fount nothing helpful. So could somebody help me to explain why this happend?
The code are here:
#!/usr/bin/env python
#coding:utf-8
################
#This is server#
################
import SocketServer
import os
class MyServer(SocketServer.BaseRequestHandler):
def handle(self):
base_path = '/home/ftp/file'
conn = self.request
print 'connected...'
while True:
#####receive pre_data: we should get data like 'put|/home/aaa|7'
pre_data = conn.recv(1024)
print 'pre_data:' + pre_data
cmd,file_name,file_size = pre_data.split('|')
print 'cmd: ' + cmd
print 'file_name: '+ file_name
print 'file_size: '+ file_size
recv_size = 0
file_dir = os.path.join(base_path,file_name)
f = file(file_dir,'wb')
Flag = True
####receive 1024bytes each time
while Flag:
if int(file_size)>recv_size:
data = conn.recv(1024)
recv_size+=len(data)
else:
recv_size = 0
Flag = False
continue
f.write(data)
print 'upload successed.'
f.close()
instance = SocketServer.ThreadingTCPServer(('127.0.0.1',9999),MyServer)
instance.serve_forever()
#!/usr/bin/env python
#coding:utf-8
################
#This is client#
################
import socket
import sys
import os
ip_port = ('127.0.0.1',9999)
sk = socket.socket()
sk.connect(ip_port)
while True:
input = raw_input('path:')
#####we should input like 'put|/home/aaa.txt'
cmd,path = input.split('|')
file_name = os.path.basename(path)
file_size=os.stat(path).st_size
sk.send(cmd+"|"+file_name+'|'+str(file_size))
send_size = 0
f= file(path,'rb')
Flag = True
#####read 1024 bytes and send it to server each time
while Flag:
if send_size + 1024 >file_size:
data = f.read(file_size-send_size)
Flag = False
else:
data = f.read(1024)
send_size+=1024
sk.send(data)
f.close()
sk.close()
The TCP is a stream of data. That is the problem. TCP do not need to keep message boundaries. So when a client calls something like
connection.send("0123456789")
connection.send("ABCDEFGHIJ")
then a naive server like
while True;
data = conn.recv(1024)
print data + "_"
may print any of:
0123456789_ABCDEFGHIJ_
0123456789ABCDEFGHIJ_
0_1_2_3_4_5_6_7_8_9_A_B_C_D_E_F_G_H_I_J_
The server has no chance to recognize how many sends client called because the TCP stack at client side just inserted data to a stream and the server must be able to process the data received in different number of buffers than the client used.
Your server must contain a logic to separate the header and the data. All of application protocols based on TCP use a mechanism to identify application level boundaries. For example HTTP separates headers and body by an empty line and it informs about the body length in a separate header.
Your program works correctly when server receives a header with the command, name and size in a separate buffer it it fails when client is fast enough and push the data into stream quickly and the server reads header and data in one chunk.

how can i send facebook message using selenium webdriver

I am able to login on facebook, able to open chat but unable to send any message
Below program code I have used:
//Login on FB >> Working fine
driver.findElement(By.xpath(".//*[#id='email']")).sendKeys("******#gmail.com");
driver.findElement(By.xpath(".//*[#id='pass']")).sendKeys("********");
driver.findElement(By.xpath(".//*[#id='u_0_l']")).click();
// click on message icon >> Working fine
driver.findElement(By.xpath(".//*[#id='u_0_h']/li[1]/div/a/span")).click();
//click on friends name, to whom i want to send message >> Working fine
driver.findElement(By.xpath("/html/body/div[1]/div[1]/div/div/div/div[1]/div/div/div[2]/ul/li[5]/div/div[2]/div/div[3]/div/div[1]/div/div/ul/li[2]/a")).click();
Thread.sleep(5000);
//Send message >>>> here, i am not getting any response, code run without entered any message or error
driver.findElement(By.xpath(".//*[#class='_552h _35li _n4k']")).sendKeys("Hiii");
driver.findElement(By.xpath("/html/body/div/div[5]/div[1]/div/div/div[1]/div/div[1]/div[2]/div/div/div/div/div[4]/div[5]/div[1]/div/div/div[2]/div/div/div")).sendKeys(Keys.ENTER);;
I have used this code, it works for me.
driver.findElement(By.xpath("//div[contains(#class,'_5rpu') and #role='combobox']")).sendKeys("hi"+Keys.ENTER);
require 'selenium-webdriver'
#driver = Selenium::WebDriver.for :chrome
#driver.get 'https://www.facebook.com/fname.lname?fref=none'
a = #driver.find_element(:xpath, '//[#id="email"]').send_keys('aaa#gmail.com')
a = #driver.find_element(:xpath, '//*[#id="pass"]').send_keys('12345678')
a = #driver.find_element(:xpath, '//*[#value="Log In"]').click
sleep 5
a = #driver.find_element(:xpath, '//a[#href="/messages/fname.lname" and #role="button"]').click
sleep 2;p 'This is Where I clicked/initiated the Send Message '
a = #driver.find_element(:xpath, '//div[#class="_1ia"]/descendant::div[#class="_5rpu" and #role="textbox"]')
a.send_keys('Hi There') # This is where I entered the keys and Did Enter
a.send_keys:enter
The correct answer since the #role has changed is :
WebElement sendmsg = driver
.findElement(By.xpath("//div[#class='_1ia']/descendant::div[#class='_5rpu' and #role='combobox']"));
sendmsg.sendKeys("Just testing: using selenium webdriver" + Keys.ENTER);

What are all the custom URL schemes supported by the Facebook iPhone app?

Note
These URL's are likely not available.
Facebook has been updated a number of times and did not officially support any of these.
/Note
I am trying to see what information is available about the Facebook app on the iPhone. So far I have found a couple sites containing limited information, and I was able to figure out the Facebook Profile Publish command (unfortunately it keeps the window open after you post - so the person who publishes to Facebook has to push post once and then cancel).
My question is, does anyone have any more info on the commands that can be sent to the Facebook app?
The following information I was able to obtain from http://wiki.akosma.com/IPhone_URL_Schemes
fb://profile – Open Facebook app to the user’s profile.
fb://friends – Open Facebook app to the friends list.
fb://notifications – Open Facebook app to the notifications list (NOTE: there appears to be a bug with this URL. The Notifications page opens. However, it’s not possible to navigate to anywhere else in the Facebook app)
fb://feed – Open Facebook app to the News Feed.
fb://events – Open Facebook app to the Events page.
fb://requests – Open Facebook app to the Requests list.
fb://notes – Open Facebook app to the Notes page.
fb://albums – Open Facebook app to Photo Albums list.
These commands only open the corresponding windows.
The first useful command I found is
fb://publish/profile/#ID#?text=#BODY#
this is a combination of the Facebook graph api and some other info I found on other application. Then a little poke and hope.
replace #ID# with the id of the profile you want to post to, then replace #BODY# with the text you want to post to, and the window shows up in facebook app with the text pre populated.
Also you can use me as an id to post to the signed-in user's profile.
If anyone knows any more I am trying to interface with it and would like as much information as possible.
June 2014 EDIT: Here is the updated list from Facebook v12:
fb://album?id=%#
fb://background_location
fb://browse?semantic=%#&result_type=%d&source_type=%d&title=%#
fb://codegenerator
fb://composer?%#
fb://composer?pagename=%#&pageid=%#
fb://composer?target=%#
fb://composer?view=location
fb://contactimporter/?ci_flow=%d
fb://discovery
fb://entitycards/?ids=%#&source=%#
fb://event?id=%#
fb://event?id=%#&post_id=%#
fb://eventguestlist?event_id=%#
fb://events/list
fb://eventslist?owner_fbid=%#
fb://f(.+)(\?|&)v=map(\&.*)?
fb://f(.+)incorrect_map_pin(\&.*)?
fb://friendsnearby
fb://friendsnearby/?source=%#
fb://friendsnearby/?source=divebar
fb://friendsnearby/ping?fbid=%#&source=%#
fb://friendsnearby/profile?fbid=%#&source=%#
fb://gift?
fb://group?id=%#
fb://group?id=%#&object_id=%#&view=permalink
fb://hashtag/
fb://hashtag/%#
fb://location_settings
fb://messageComposer?
fb://messaging/new
fb://messaging/new?id=%#&name=%#&isPage=%d
fb://messaging?
fb://messaging?id=%#
fb://messaging?id=%#&%#
fb://messaging?tid=%#
fb://messaginglist
fb://page?id=%#
fb://page?id=%#&source=%#&source_id=%#
fb://page_about?id=%#
fb://page_friend_likes_and_visits?id=%#
fb://page_reviews?id=%#
fb://photo?%#
fb://photo?id=%#
fb://pnp?type=instructions
fb://products?%#
fb://profile
fb://profile/%#
fb://profile?id=%#
fb://profile?id=%#&%#=%#
fb://story?%#
fb://story?graphqlid=%#
fb://story?id=%#
fb://timelineappsection?id=%#
fb://topic/%#
fb://uploadcoverphoto
fb://zrnext
April 2013 EDIT : Looks like none of below works anymore with latest versions, facebook app navigation probably has been rewrited. Some reverse engineering to do on latest version...
I guess that might help, that's from v3.4 :
fb://album/%#
fb://album/(aid)
fb://album/(aid)/cover
fb://album/(initWithAID:)
fb://album/(initWithAID:)/cover
fb://album/new
fb://albums
fb://birthdays
fb://birthdays/(initWithMonth:)/(year:)
fb://birthdays/(month)/(year)
fb://chat/(fbid)
fb://chat/(initWithUID:)
fb://chat/(user.fbid)
fb://contactimporter
fb://contactimporter/invites
fb://contactimporter/legalese
fb://contactimporter/modal
fb://event/%#
fb://event/%llu
fb://event/(event.fbid)/members/(rsvpStatus)
fb://event/(fbid)
fb://event/(fbid)/members/attending
fb://event/(fbid)/members/declined
fb://event/(fbid)/members/not_replied
fb://event/(fbid)/members/unsure
fb://event/(fbid)/rsvp
fb://event/(initWithEventId:)
fb://event/(initWithEventId:)/members/(rsvpStatus:)
fb://event/(initWithEventId:)/rsvp
fb://events
fb://events/
fb://faceweb/(initWithURL:)
fb://facewebmodal/(initWithURL:)
fb://feed
fb://feed/%#
fb://feed/(filter.filterKey)
fb://feed/(initWithFilterKey:)
fb://feedfilters
fb://findfriends
fb://findfriends/legalese
fb://findfriends/modal
fb://friends
fb://friends/picker
fb://friends/sync
fb://friends/sync/(removeData:)
fb://friends/sync/disconnect
fb://friends/sync/legalese
fb://group/(fbid)/members
fb://group/(initWithGroupId:)/members
fb://groups
fb://launcher
fb://mailbox
fb://mailbox/(folder)
fb://mailbox/(initWithFolder:)
fb://mailbox/(initWithFolder:)/(tid:)
fb://mailbox/(mailbox.folder)/(tid)
fb://mailbox/compose
fb://mailbox/compose/(fbid)
fb://mailbox/compose/(initWithUID:)
fb://map
fb://messaging
fb://messaging/(folder)
fb://messaging/(initWithFolder:)
fb://messaging/(initWithFolder:)/(tid:)/participants
fb://messaging/(initWithFolder:)/thread?tid=(tid:)
fb://messaging/(mailbox.folder)/(urlEscapedTid)/participants
fb://messaging/(mailbox.folder)/thread?tid=(urlEscapedTid)
fb://messaging/compose
fb://messaging/compose/(fbid)
fb://messaging/compose/(initWithUID:)
fb://messaging/original_message?mid=(commentId)
fb://messaging/original_message?mid=(initWithMessageId:)
fb://nearby
fb://note/%#
fb://note/(initWithNoteId:)
fb://note/(initWithNoteId:)/edit
fb://note/(noteId)
fb://note/(noteId)/edit
fb://note/compose
fb://notes
fb://notifications
fb://online
fb://online#offline
fb://online#online
fb://page/(page.id)
fb://pages
fb://photo/%#/0/%#
fb://photo/(album.user.fbid)/(album.aid)/(pid)
fb://photo/(album.user.fbid)/(album.aid)/(pid)/feedback
fb://photo/(fbid)/profilepic
fb://photo/(initWithProfilePicturesUID:)/profilepic
fb://photo/(initWithUID:)/(aid:)/(pid:)
fb://photo/(initWithUID:)/(aid:)/(pid:)/feedback
fb://photosapp
fb://place/%#
fb://place/(initWithPageId:)
fb://place/(targetId)
fb://place/addfriends
fb://place/addphoto
fb://place/create
fb://places
fb://places/%lld/%lld
fb://places/(initWithCheckinAtPlace:)/(byUser:)
fb://places/legalese/tagged/%lld/%lld
fb://places/legalese/tagged/(initWithTaggedAtPlace:)/(byUser:)
fb://post/%#
fb://post/%#_%#
fb://post/(initWithPostId:)
fb://post/(initWithPostId:)/tagged
fb://post/(postId)
fb://post/(postId)/tagged
fb://post/(postId)/untagSelf
fb://post/(untagSelfFromPostWithId:)/untagSelf
fb://profile
fb://profile/
fb://profile/%#
fb://profile/%lld
fb://profile/(addFan:)/addfan
fb://profile/(fbid)
fb://profile/(fbid)/addfan
fb://profile/(fbid)/addfriend
fb://profile/(fbid)/fanpages
fb://profile/(fbid)/fans
fb://profile/(fbid)/favorite
fb://profile/(fbid)/friends
fb://profile/(fbid)/info
fb://profile/(fbid)/menu
fb://profile/(fbid)/mutualfriends
fb://profile/(fbid)/photos
fb://profile/(fbid)/poke
fb://profile/(fbid)/removefriend
fb://profile/(fbid)/wall
fb://profile/(initWithFBID:)/menu
fb://profile/(initWithFansUID:)/fans
fb://profile/(initWithFriendsUID:)/friends
fb://profile/(initWithInfoUID:)/info
fb://profile/(initWithMutualFriendsUID:)/mutualfriends
fb://profile/(initWithPhotosUID:)/photos
fb://profile/(initWithUID:)
fb://profile/(initWithUID:)/addfriend
fb://profile/(initWithUID:)/fanpages
fb://profile/(initWithUID:)/poke
fb://profile/(initWithUID:)/removefriend
fb://profile/(initWithWallUID:)/wall
fb://profile/(toggleFavorite:)/favorite
fb://profile/(user.fbid)/fans
fb://profile/(user.fbid)/friends
fb://profile/(user.fbid)/mutualfriends
fb://profile/0
fb://publish
fb://publish/mailbox/(initWithFolder:)/(tid:)
fb://publish/mailbox/(mailbox.folder)/(tid)
fb://publish/photo/(album.user.fbid)/(album.aid)/(pid)
fb://publish/photo/(initWithUID:)/(aid:)/(pid:)
fb://publish/post/(initWithPostId:)
fb://publish/post/(postId)
fb://publish/profile/(fbid)
fb://publish/profile/(initWithUID:)
fb://publish/profile/(owner.fbid)
fb://requests
fb://root
fb://upload
fb://upload/%#/album/%lld/%#
fb://upload/%#/checkin/%lld
fb://upload/%#/profile/%lld
fb://upload/(initWithSource:)/album/(uid:)/(aid:)
fb://upload/(initWithSource:)/checkin/(checkinId:)
fb://upload/(initWithSource:)/profile/(uid:)
fb://upload/actions
fb://upload/actions/album/(initWithUID:)/(aid:)
fb://upload/actions/album/(user.fbid)/(aid)
fb://upload/actions/checkin/(checkinId)/
fb://upload/actions/checkin/(initWithCheckinId:)
fb://upload/actions/newalbum
fb://upload/actions/profile/(fbid)
fb://upload/actions/profile/(initWithUID:)
fb://upload/actions/resume
fb://upload/album/(showUploadMenuWithUID:)/(aid:)
fb://upload/album/(user.fbid)/(aid)
fb://upload/checkin/(checkinId)
fb://upload/checkin/(showUploadMenuWithCheckinID:)
fb://upload/discard
fb://upload/profile/(fbid)
fb://upload/profile/(owner.fbid)
fb://upload/profile/(showUploadMenuWithUID:)
fb://upload/resume
fb://userset
fb://video/%#
fb://video/(playVideoWithId:)
fb://video/(videoId)
Because the accepted answer is not a CW, I'm adding updates separately.
These are taken from Android, but should be the same for iOS.
This list has reached the length limitation of a SO post (30k characters), so further updates will be posted in a different medium, specified at a later date.
October 2017 Update (from Facebook Messenger v141.0.0.25.76):
Unless otherwise specified, links below should begin with fb://
fb-service://limit_friend_requests
about
account/recovery
account_settings
account-kit/confirmation_code/?confirmation_code={confirmation_code}
achievements/landing/?achievement_id=%s&source=%s
activitylog
ad_activity
ad_break/admin_preview/?video_id=%s&time_offset=%s
add_address/
add_services
ads/preferences/?tracking=%s
ads_checkout_payment_receipt?account=%s&campaignGroupID=%s&chargeAmount=%s&chargeCurrency=%s&orderNumber=%s&credentialID=%s&timeCreated=%s&withdrawAmount=%s&withdrawCurrency=%s
ads_experience/?id=%s
ads_payments_add_bank_account?account=%s&contextID=%s&originRootTag=%s
ads_payments_add_card?account=%s&contextID=%s&dismissOnCompletion=%s&isCheckout=%s&isPUX=%s
ads_payments_add_card?account=%s&isCheckout=%s&dismissOnCompletion=%s&contextID=%s
ads_payments_add_credit_card?account=%s&contextID=%s&originRootTag=%s&offlineMode=%s&legacyAccountID=%s&country=%s&currency=%s
ads_payments_add_paypal?account=%s&contextID=%s&originRootTag=%s
ads_payments_billing_date?account=%s&contextID=%s&hasIntent=%s
ads_payments_billing_date_saved?account=%s&contextID=%s
ads_payments_brazil_address_info?account=%s&contextID=%s&taxID=%s
ads_payments_brazil_tax_id?account=%s&contextID=%s
ads_payments_checkout?account=%s&page=%s&boostMessage=%s&boostImageURI=%s&boostResultType=%s&boostResultLowerBound=%s&boostResultUpperBound=%s&boostDuration=%s&budgetAmount=%s&budgetCurrency=%s&budgetType=%s&credentialID=%s&cachedCscToken=%s&contextID=%s&campaignGroupID=%s&cardType=%s&cardAssociationImageURL=%s&lastFourDigits=%s&expiryMonth=%s&expiryYear=%s&newEndTime=%s&editTime=%s
ads_payments_checkout?account=%s&page=%s&boostMessage=%s&boostImageURI=%s&boostResultType=%s&boostResultLowerBound=%s&boostResultUpperBound=%s&boostDuration=%s&budgetAmount=%s&budgetCurrency=%s&budgetType=%s&credentialID=%s&cachedCscToken=%s&contextID=%s&cardType=%s&cardAssociationImageURL=%s&lastFourDigits=%s&expiryMonth=%s&expiryYear=%s&campaignGroupID=%s&newEndTime=%s&editTime=%s
ads_payments_checkout_receipt?account=%s&campaignGroupID=%s
ads_payments_country_selector?account=%s&contextID=%s&offlineMode=%s&countryCode=%s&currencyCode=%s
ads_payments_currency_selector?account=%s&contextID=%s&selectedCurrency=%s
ads_payments_direct_debit_country_selector?account=%s&contextID=%s&countryCode=%s
ads_payments_flow?account=%s&contextID=%s&adBudgetAmountInHundredths=%s&adBudgetType=%s&adDuration=%s&adCampaignGroupID=%s&adEditTime=%s&adNewEndTime=%s&offlineMode=%s&legacyAccountID=%s&addPaymentMethodMessage=%s&disableCouponEntry=%s&countryCode=%s&currencyCode=%s&boostAfterComplete=%s&pageID=%s
ads_payments_gst_id?account=%s&contextID=%s
ads_payments_prepay_business_info?account=%s&contextID=%s&originRootTag=%s
ads_payments_prepay_client_info?account=%s&contextID=%s&originRootTag=%s&businessTaxID=%s&businessEuVatTaxCountry=%s&businessName=%s&businessStreet1=%s&businessStreet2=%s&businessCity=%s&businessState=%s&businessZip=%s&businessCountryCode=%s
ads_payments_prepay_disclaimer?account=%s&contextID=%s&originRootTag=%s
ads_payments_prepay_funding?account=%s&contextID=%s&originRootTag=%s
adsmanager/%s/billing/settle
adsmanager/%s/detailed_targeting/%s/%s/%s/%s/%s/%s/%s?isModal=%s
adsmanager/%s/insights/%s
adsmanager/{account}/insights/{adObject}
adsmanager/{account}/insights/{adObject}?account=%s&adObject=%s&editCampaignURI=%s&shouldShowAdHeaderView=%s&adObjectLevel=%s
adsmanager/image/select/%s
adsmanager/image/select/{page}
adsmanager/image/select/{page}?page=%s&cropWidth=%s&cropHeight=%s&minCropWidth=%s&minCropHeight=%s&callbackModule=%s&callbackMethod=%s&imageSourceCategory=%s&isInstagramEnabled=%s&account=%s
albumcreator
albumcreator?featured={is_featured}
albums
albums/%s
albums/%s?tab_to_land=%s
albums_edit_flow
ama?entryPoint=%s&fb_hidesTabBar=%s&presentationMethod=%s&targetURI=%s
ama?entryPoint=%s&targetURI=%s
app_section/%s/%s
appcenter
appcenter/detail?app_id=%s
appfeed
appinvites/
background_location/nux?source=%s&redirect_after_accept=%s&nux_type=%s
background_location/settings
beam/receiver?ssid=%s&code=%s&timestamp=%d
bi_boosted_post_appeal_form/?boost_id={boost_id}
booking_request/create_appointment
booking_request/create_appointment?booking_request_id=%s
bookmarks/
bookmarks_section
boost_event/?page_id=%s&graphql_story_id=%s&promotion_target_id=%s&placement_extra=%s&referral=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
boost_post/?page_id=%s&graphql_story_id=%s&referral=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
bootcamp/
camera
canvaseditor?canvas=%s&page_id=%s&story=%s&source=%s
casual_groups_tab
cityguides?pageID=%s&pageName=%s&entryPoint=%s
codegenerator
collection/%s/%s/%s
commerce/admin/products/%s/edit
commerce/admin/products/add
commerce/admin/shop/%s/add
commerce/admin/shop/%s/edit
commerce/collectionview/%s
commerce/collectionview/%s?rid=%s&rt=%s&title=%s&hide_page_header=%s
commerce/contact-merchant/dialog?<q$1>
commerce/products/%s
commerce/products/%s?rid=%s&rt=%s&preview_details=%s
commerce/products/<p$1>
commerce/shop/%s
commerce/shop/%s?rid=%s&rt=%s&selected_product_id=%s&hide_page_header=%s
commerce/shop/visual-search/camera
commerce_inventory?groupID=%s
commerce_inventory_comments?storyID=%s
commerce_inventory_cross_post?storyID=%s
component_script_playground
composer
composer?view=live&text={?text}
contextual_profile/{#com.facebook.katana.profile.id}
coverphoto
creatorapp/home/following
cta_promotion?page_id=%s&boost_id=%s&source=%s&referral=%s&restore_saved_settings=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
daily_dialogue_weather_permalink
daily_dialogue_weather_permalink?city_id=%s
daily_dialogue_weather_permalink?city_id=%s&orig_src=%s
daily_dialogue_weather_permalink?orig_src=%s
data_savings_mode_settings
data_savings_mode_settings/?source=bar
data_savings_mode_settings/?source=bookmarks
data_savings_upsell
dbl_loggedin_settings
dbl_login_activity
device_requests
dialtone_info_screen
direct_inbox/
direct_viewer/source/{source}
direct_viewer/source/{source}/direct_thread_id/{direct_thread_id}
ditto_timeline/{#com.facebook.katana.profile.id}
donate/?fundraiser_campaign_id=%1$s&action_type=%2$s
donate/?fundraiser_campaign_id=%1$s&post_id=%2$s
donate/?fundraiser_campaign_id=%1$s&post_id=0
donate/?fundraiser_campaign_id=%1$s&source=%2$s
donate?fundraiser_campaign_id=%1$s&source=%2$s
donate_create
donate_create/?force_create_form=true
donate_create/?fundraiser_campaign_id=%1$s&source=%2$s
donate_create/?fundraiser_charity_id=%1$s&source=%2$s
donate_create/?fundraiser_charity_id=%1$s&source=%2$s&promotional_source=%3$s
donate_create/?source=%1$s
donate_guestlist/?fundraiser_campaign_id=%1$s
donate_invite/?fundraiser_campaign_id=%1$s
donate_invite/?fundraiser_campaign_id=%1$s&source=%2$s
donate_invite_new
donate_single_click_invite/?fundraiser_campaign_id=%1$s
donate_single_click_invite/?fundraiser_campaign_id=%1$s&source=%2$s
donate_single_click_invite/?fundraiser_campaign_id=%1$s&source=%2$s&referral_source=%3$s
donate_trigger/?id=%1$s
donate_trigger/?id=%1$s&source=%2$s
editor?entry_point={entry_point}
electionHub
electionHub/?ref=search
event/%s
event/%s/extendedinvite
event/%s/invite
event/%s/invitegroup/%s
event/%s/makeplans?__referral_surface=%s&__referral_mechanism=%s
event/%s/messagefriends/asgroup?__referral_surface=%s&__referral_mechanism=%s
event/%s/messagefriends?__referral_surface=%s&__referral_mechanism=%s
event/{event_id}/messageallfriends?__referral_surface={ref_surface}&__referral_mechanism={ref_mechanism}
event_collection
event_creation
event_creation/%s
event_creation/{#%s}
event_creation/categories
event_creation/details
event_creation/notification?story_cache_id=%s
event_creation/prefill/%s
event_creation?privacy={%s}
event_discovery
event_discovery/filter?title={%s}&suggestion_context={%s}
event_edit
event_stories_review_sheet?eventID={event_id}&bucketID={bucket_id}
events
events/%s/timeslots
events/{%s}/reaction
events/campaign?suggestion_token={suggestion_token}&title={title}&ref_notif_type={ref_notif_type}&ref_surface={ref_surface}&ref_mechanism={ref_mechanism}
events/section?section_name=%s
explore/
facecast_integrated_sharesheet/
facecast_sharesheet/
facerec_enrollment_setting
facerec_settings
faceweb/f?href=
faceweb/f?href=%%2Fprofile.php?v=info%%26id=%s
faceweb/f?href=%2Ffriends%2Fcenter%2Ffriends%2F
faceweb/f?href=%2Fhelp%2Fwork
faceweb/f?href=%2Fmessages?src=fb4a
faceweb/f?href=%2Fnearby_info%2Fmanage_hidden_pages
faceweb/f?href=%2Fonavo/promotion/install
faceweb/f?href=%2Fprivacy
faceweb/f?href=%2Fprivacy%2Ftouch%2Ftimeline_and_tagging
faceweb/f?href=%2Fsaved
faceweb/f?href=%s
faceweb/f?href=%s&force_faceweb=true
faceweb/f?href=//settings/location/learnmore
faceweb/f?href=/ads/manager
faceweb/f?href=/commerce/contact-merchant/dialog/?product_item_id=%s
faceweb/f?href=/coupons/info/?coupon_id=%s
faceweb/f?href=/event/%s/madminpanel/pending
faceweb/f?href=/groups
faceweb/f?href=/instant_article/publisher_ad_about
faceweb/f?href=/media/set/?set=ft.%s
faceweb/f?href=/pages/create/?ref_type=android_timeline
faceweb/f?href=/pages/messaging/action/compose/?post_id=%s
faceweb/f?href=/pages/place_claim/entry_redirect/?page_id=%s
faceweb/f?href=/profile/intro/edit/about
faceweb/f?href=/profile/intro/edit/links
faceweb/f?href=/settings/email
faceweb/f?href=/timeline/friend_list_view/?profile_id=%s
faceweb/f?href=https://m.facebook.com/jobs?source=%s
faceweb/f?href=https://m.facebook.com/onthisday/notification/settings/?source=permalink
faceweb/f?href=https://m.facebook.com/onthisday/preferences/?source=permalink
faceweb/f?href=https://m.facebook.com/order_tracking
faceweb/f?href=https://m.facebook.com/work/terms/nav
facewebmodal/f?href=%s
family_nav_instagram_install
fb_photos_picker
fb_photos_picker/?campaign=%s
feed
feed_awesomizer
feed_awesomizer/connections
feed_awesomizer/following
feed_awesomizer/see_first
feed_awesomizer/unfollowed
feed_switcher?switcher_item_id={%s}
findfriends/learn_more
findfriends?ci_flow=%s
findfriends?ci_flow=%s&ccu_ref=%s&force_show_legal_screen=true
findfriends?ci_flow=%s&force_show_legal_screen=true
findwifi
findwifi_nux
findwifi_settings
flex_dsm_settings
free_fb_invite
friending_possibilities?location=%s
friendlist/%s
friends/
friends/center?source_ref=%s
friends/center?source_ref=%s&fc_tab=%s
friends/center?source_ref=%s&fc_tab=requests&user_id=%s&name=%s&profile_pic=%s&attachment=%s
friends/new_user_promotion
friends/requests/
friends/requests_tab
friendship/%s/%s
friendsnearby/profile?fbid=%s&source=%s&notif_id=%s
friendsnearby?source=%s
friendsnearby_invite?selected=%s&excluded=%s
fullscreen_video/{video_id}?loop={loop}
fullscreen_video_redirect/{%s}
fullscreen_video_redirect/{%s}?threadid={%s}
fundraiser_beneficiary_other_input
fundraiser_beneficiary_search/?launch_state=%1$s&beneficiary_type=%2$s
fundraiser_beneficiary_search/?launch_state=%1$s&beneficiary_type=%2$s&source=%3$s
fundraiser_category_selector
fundraiser_country_selector
fundraiser_creation_suggested_cover_photo
fundraiser_currency_selector
fundraiser_submitted/?fundraiser_campaign_id=%1$s&is_p4p=%2$s
fundraisers_shell/?targetURI=%1$s
getgames
getquote/%s/form_builder
gift/receive?gid=%s
gltf_fullscreen
graph_editor?entry_point={entry_point}
group/%s
group/%s/?group_tip_id=%s
group/%s?group_view_referrer=%s
group_commerce_bookmark_category_feed_route?referralSurface+%s
group_commerce_bookmark_category_route?referralSurface=%s&categoryId=%s
group_commerce_bookmark_route?referralSurface=%s
group_commerce_message_seller_route?groupCommerceProductItemID=%s
groups/chats
groups/chats/%s
groups/create
groups/create?ref=%s
groups/createtab
groups/discover
groups/discover/categories
groups/discover/category?id={%s}
groups/discover/tag?id=%s
groups/events/{%s}
groups/gridtab
groups/link
groups/members/{%s}
groups/photos/{%s}
groups/questionnaire/%s
groups/suggestions?source=%s
groups_discovery
groups_targeted_tab
gv_editor?campaign_id=%s&campaign_type=%s&editor_type=%s&initial_source=%s&direct_source=%s
gv_share/?campaign_id=%s&campaign_type=%s&initial_source=%s&direct_source=%s&share_preview=%s&share_preview_title=%s
gv_share/?campaign_id=%s&campaign_type=%s&initial_source=%s&direct_source=%s&share_preview=%s&share_preview_title=%s&share_autofill=%s
hashtag/%s?name=%s&id=%s
help
hyperlocal_discovery?place_id={place_id}&trigger_type={trigger_type}
id_backed_privacy_checkup_react/?checkup_id=%s
ig_sign_up_creation
immersive_capture_sharesheet/
inspiration_settings/
inspirationscamera/?effectID={?effect_id}&reason={?reason}&shareActorID={?share_actor_id}&shareTargetID={?share_target_id}&shouldDisplayCameraRollEffectTooltip={?should_display_camera_roll_effect_tooltip}&categoryID={?category_id}&inspiration_post_action={?inspiration_post_action}&cameraFlow={?camera_flow}
instagram_ci_sso?entry_point={entry_point}
instant_articles
instant_shopping_catalog/?catalog_id={%s -1}&catalog_view={%s -1}&product_id={%s -1}&product_view={%s -1}
invite_coworker
jobApplication?job_opening_id=%s
jobApplication?job_opening_id=%s&source=%s
jobApplication?job_opening_id=%s&source=%s&waterfall_session_id=%s
jobApplicationForm?job_opening_id=%s
jobATSApplication?job_application_id=%s&source=%s
jobOpeningATSRoute?job_opening_id=%s&source=%s
jobSearch
jobSearch?pinned_job_opening_id=%s&source=%s
jobSearch?source=%s
jobSearch?waterfall_session_id=%s&source=%s
language_in_videos_picker
language_switch
lead_gen/?lead_gen_data_id=%s
leadgen?formID=%s&adID=%s&app=%s&mediaID=%s&actorID=%s&trackingToken=%s&brandingImageURI=%s&relayFunnelTag=%s&dynamicItemID=%s
legacy_contact/%s
legacy_contact/%s/cover_photo/
legacy_contact/%s/friend_requests/
legacy_contact/%s/profile_picture/
lh_prompt
lifebalance
link_fb_invite
local_awareness_promotion/?page_id=%s&boost_id=%s&source=%s&referral=%s&restore_saved_settings=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
localsell_home/?tabIndex=%s&referralSurface=%s
location_settings
location_timeline
location_timeline_nux
logged_out_push_interstitial
loginapprovalspush
loyalty_add_point_or_redeem
loyalty_admin_phone_number_qr_code_selection?programID={programID}&programTitle={programTitle}
loyalty_admin_result
loyalty_admin_status?pageID={pageID}
loyalty_home?referrer=bookmarks
loyalty_kiosk
ls_prompt
maps
marketplace
marketplace?referralSurface=%s
marketplace_buy_sell_group_home
marketplace_category_deep_link
marketplace_category_menu
marketplace_category_search
marketplace_composer/?assetIDs=%s&defaultCategoryID=%s
marketplace_crosspost
marketplace_debug_info_details
marketplace_drafts
marketplace_editcomposer/?storyID=%s&referralSurface=%s&isDraft=%s
marketplace_forsalegroupshome
marketplace_forsalegroupshome_story
marketplace_home
marketplace_inactive_items
marketplace_initial_message
marketplace_location
marketplace_message
marketplace_message/?threadID=%s&referralSurface=%s
marketplace_multi_theme_feed
marketplace_notification_settings
marketplace_notifications
marketplace_photo_chooser_composer
marketplace_product_details
marketplace_product_details?id=%s&referralSurface=%s
marketplace_product_details_from_post_id?post_id=%s
marketplace_product_message_threads
marketplace_product_message_threads/?productTitle=%s&productID=%s&referralSurface=%s
marketplace_profile?id=%s
marketplace_saved
marketplace_saved_search_results
marketplace_search
marketplace_search?query=%s&referralSurface=%s
marketplace_seller_item_details
marketplace_seller_item_details/?productTitle=%s&forSaleItemID=%s&referralSurface=%s
marketplace_shops?refID=%s&refType=%s&categoryIDs=%s&browseContext=%s
marketplace_theme_feed
marketplace_top_sellers
marketplace_your_items
mediaset/brpi.%s
mediaset/brpo.%s
mentorship_expectation?memberId=%s&groupId=%s&programId=%s&role=%s
mentorship_home
mentorship_meet_mentee?memberId=%s&groupId=%s&programId=%s&role=%s
mentorship_welcome?memberId=%s&groupId=%s&programId=%s&role=%s
menu_management?page_id=%s
merchant_onboarding_currency?refID=%s&refType=%s&paymentProvider=%s&pageID=%s
merchant_onboarding_shop_type?refID=%s&refType=%s&pageID=%s
merchant_onboarding_terms?refID=%s&refType=%s&pageID=%s
messaging
messaging/
messaging/%s
messaging/active_now/
messaging/compose/
messaging/compose/%s
messaging/compose/new
messaging/compose/new/group
messaging/groupthreadfbid/
messaging/groupthreadfbid/%s
messaging/thread/thread?id=
messaging/thread/thread?id=%s
messaging_lite
messaging_tab
messaging_threadlist
mobileconfigrnconfigparams?title=%s&overridden=%s
mobileconfigrnparamoverride?configName=%s&title=%s
mobileconfigrntroubleshooting?configName=%s&title=%s
mobileconfigrnui
mobileconfigrnvalue
movies_theater_select_flow?movie_flow_service_config_id=%s&movie_event_external_movie_id=%s
movieshome
native_album/%s
native_article?article={%s}
native_article?article={%s}&canonical={%s}
native_article?article={%s}&canonical={%s}&saved={%s}
native_article?article={%s}&canonical={%s}&saved={%s}&featured={%s}
native_document/?id={%s -1}
native_post/%s
native_post/%s?fallback_url=%s
native_post/%s?story_cache_id=%s
native_template_shell/?id=throwback/camera/preference?device_id=%s&analytics=throwback/camera/preference
nativename
nearby
nearby/search
nearby/subcategory
nearbyInfoSettings
neo/fallback
neo/fallback?target=friending
neo/fallback?target=hub
neo/fallback?target=profile
neo_friending
neo_hub
neo_profile
neo_profile?fbid=%s&referrer=%s
newContactPoint
nfx?object_id=%s
nfx?object_id=%s&location=%s
note/%s
notification_settings
notification_settings_add_contact_point?contact_type={contact_type}
notification_settings_alerts
notification_settings_confirm_contact_point
notification_settings_email
notification_settings_phone_number
notification_settings_push_and_sounds
notifications
notifications_friending
notifications_griffin
notifications_tab
now/
nux/profile_picture?external_photo_source=%s
offers/barcode_fullscreen/?title=%s&extra_image_url=%s
offers/detail/?coupon_id=%s
offers/detail/view/?offer_view_id=%s&share_id=%s&redirect=%s
offers/detail/view/?offer_view_id=%s&share_id=%s&redirect=%s&offer_should_claim=%s&offer_location=%s
offers/wallet
offlinefeed
onavo_protect_interstitial
online
onthisday?source=%s
onthisday?source=%s&campaign_id=%s&story_id=%s
order_food_see_all
page/%s
page/%s/admin_feed
page/%s/admin_stories
page/%s/album_list
page/%s/book_appointment?referrer=%s
page/%s/book_appointment?referrer=%s&service_id=%s
page/%s/call_to_action
page/%s/child_locations
page/%s/clips
page/%s/community
page/%s/config_call_to_action/%s?ref=%s
page/%s/configure_action
page/%s/episodes
page/%s/events_list
page/%s/get_quote
page/%s/info
page/%s/insights
page/%s/invite_friends_to_like_page
page/%s/jobs
page/%s/offers
page/%s/pendingedits
page/%s/playlists
page/%s/reaction
page/%s/recommendations
page/%s/residence
page/%s/service/%s
page/%s/services_list
page/%s/services_list?entry_point=%s
page/%s/share_as_message
page/%s/suggestedit?entry_point=%s
page/%s/videohub
page/%s/videolist?page_id=%s&source=%s
page/%s/vistor_posts
page/%s?referrer=%s&admin_guidance_type=%s
page/{#arg_page_id}/call_to_action/{arg_page_call_to_action_id}?action_channel_type={arg_action_channel_type}&action_type={arg_action_type}&action_position={#arg_action_position}&page_call_to_action_ref={?arg_page_call_to_action_ref}&page_view_ref={?arg_page_view_ref}
page/{%s}/tab/{%s}
page/appointment_calendar
page/appointment_calendar?referrer=settings
page/calendar_setting_host
page/comparison?comparison_card_type={arg_comparison_card_type}&placelist_id={arg_placelist_id}&page_id={arg_page_id}&comment_graphql_id={arg_comment_graphql_id}
page/consumer_appointment_detail?appointment_id=%s
page/create_new_page/?ref=%s
page/deeplink/%s/tab/%s
page/message_settings?type=all&ref=%s
page/message_settings?type=follow_up&ref=%s&should_enable=%s
page/message_settings?type=reminder_message&ref=%s
page/messages/%s
page/service_selector
page/services_messagner_appointments_cta_creation?page_id=%s
page/video_type
page/videolist?page_id=%s&source=%s
page/videolist?page_id={%s}&source={%s}
page/voice_switcher
page_admin_appointment_request_detail
page_like_promotion/?page_id=%s&boost_id=%s&source=%s&referral=%s&restore_saved_settings=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
page_link_menu_management?page_id=%s
page_locations_map/?page_id={page_id}&page_name={page_name}&latitude={?latitude}&longitude={?longitude}&locations_count={locations_count}
pages
pages/%s/enable_server_calendar_export?provider=%s&ref=%s
pages/%s/upsell_calendar_export?booking_request_id=%s&calendar_status=%s&ref=%s
pages/?category=%s
pages/create
pages/launchpoint
pages/messaging/private_reply/dialog/%s/%s
pagesadminhelp
pagesadminlaunchpoint
pagestab
payment_settings
payment_settings_rn
photo/%s
photo/%s/?set=%s
photo_checkup/?source=%s&checkup_type=%s
photo_menu/?page_id=%s
photo_menu/add/?page_id=%s
photosbycategory/?page_id=%s
pivhelp
place/creation
place_visit_question/help
placefeed?placeid=%s&surface=%s&placename=%s
placefeed?placeid=%s&surface=%s&placename=%s&wildcard=%s
platform_first_party
platform_first_party?cta_id=%s
platform_first_party?id={%s}&cta_id={%s}&referrer={%s}&initial_input={%s}
playground_story_embedding?storyID=%s&title=%s
playground_story_embedding_list
policies
privacy_blocking/
privacy_blocking_search/
privacy_checkup/?source=%s
privacy_composer_privacy_options/
privacy_composer_redirect_route/
privacy_enable_public_privacy_options_for_minor/
privacy_follow_privacy_options/
privacy_friend_requests_privacy_options/
privacy_friends_list_privacy_options/
privacy_limit_old_posts_privacy/
privacy_public_search/
privacy_public_search_redesign/
privacy_review_lightweight/?checkup_type=%s
privacy_search_by_email_privacy_options/
privacy_search_by_phone_privacy_options/
privacy_shortcuts/
privacy_timeline_and_tagging_content_visibility/
privacy_timeline_and_tagging_others_content_visibility/
privacy_timeline_and_tagging_settings/
privacy_timeline_and_tagging_settings_can_post/
privacy_timeline_and_tagging_settings_tag_expansion/
privacy_timeline_and_tagging_settings_tag_suggestion/
privacy_timeline_and_tagging_settings_toggle_tag_review/
privacy_timeline_and_tagging_settings_toggle_timeline_review/
privacy_touch_basic/
privacy_touch_basic_redesign/
professionalratertool
profile
profile/%s
profile/%s/activitylog
profile/%s/activitylog_search
profile/%s/activitylog_search/%s
profile/%s/friends/%s?source_ref=%s
profile/%s/info/inner
profile/%s?skip_popup=true
profile/%s?viewas=%s
profile/?extra_launch_profile_photo_selector=true
profile/?extra_launch_profile_status_edit_flow=true
profile/?profile_type=person&intro_card=edit_featured_photos
profile/fun_facts
profile/fun_facts/container_view/?profile_id=%s
profile/fun_facts/manage_prompt_view
profile/info_request/%s/%s
profile/manage_posts
profile/single_fun_fact
profile?frame_id={%s}&entry_point={%s}
profile_about?profileID=%s
profile_edit
profile_insight?id=%s
profilediscovery
profilediscovery?bucketid=%s
profilediscovery?referral_type=%s&referral_id=%s
profilediscovery?referral_type=%s&referral_id=%s&bucketid=%s
profilediscoveryfeed
profileintentdashboard
profilepictureupload
prompt/{%s}invite
qp/%s
qp/%s?data=%s
qrcode
rapid_reporting?object_id=%s
rapid_reporting?object_id=%s&location=%s
reaction-demo
registration
retail_product?product_id=%s&page_set_id=%s&ad_id=%s&ref_id=%s
retail_product?product_id=<p$1>&page_set_id=0&ad_id=0&ref_id=deeplink
reviews/?page_id=%s
reviews/?review_id=%s
reviews/?user_id=%s
rnfiddle
rnotasettings
rnregisteredroutes
rtccall/audio/
rtccall/audio/%s
salegroups
sales_promo_details/?sales_promo_id=%s
samplernintegration
saved
saved/?section_name=%s&referer=%s
saved/list/create/
saved/list/create/?surface=%s&item_id=%s
saved/list/create/?surface=%s&story_id=%s
saved/list/create/?surface=%s&url=%s
search_typeahead_results/?module=%s
search_typeahead_results/?module=%s&initial_query=%s
security_settings
seen_content/
server_snapshot_tests?q=%s&testModuleName=%s&testName=%s
settings
shops?refID=%s&refType=%s&feedType=%s
shops_feed_categories_list?refID=%s&refType=%s
shops_feed_search_route?query=%s&refID=%s&refType=%s
shops_feed_unfinished_purchase_list?refID=%s&refType=%s
shops_product_details?productID=%s&refID=%s&refType=%s&imageSizing=%s&contextID=%s&styleType=%s
silvertailsampleapp
simplestoryapp
simplestoryapp?story_id=%s
snacks_profile/bucket_id/{bucket_id}/story_id/{story_id}
snacks_sharesheet/
socialwifi/?gateway_id=%s
sports/%s
stonehenge_subscription_flow
store_locator/?north={north}&west={west}&south={south}&east={east}&ad_id={?ad_id}&page_set_id={?page_set_id}&parent_page_id={?parent_page_id}
story/%s/%s
story_privacy/
storygallerysurvey/bakeoff
storygallerysurvey/default
storyviewer/bucket_id/{bucket_id}/story_id/{story_id}
structured_menu/?page_id=%s
subscription
support
support_item?id=%s
tarot/chained_digests/?digest_ids={%s}
TEMPLATE_INSTAGRAM_USERNAME_SIGN_UP_PAGE_URL
timeline_review?highlight=<q$1>
top_live
top_live_videos
topic/%s
trust/afro/?hideable_token=%s&story_graphql_token=%s&initial_action=%s&story_location=%s&tracking=%s
trust/afro/?reportable_ent_graphql_id=%s&initial_action=%s&story_location=%s
trust/afro/?reportable_ent_token=%s&initial_action=%s&story_location=%s
video/%s?source_url=%s
video/?href={href}
video/?id={%s}
video/{%s}?source_url={href}
video_home/
video_insight?id=%s
video_notification/?notif_id={%s}&notif_cache_id={%s}
video_notification/?videoid={%s}&threadid={%s}
videochannel?id=%s
watch
watch/watchlist
weather_add_city
website_promotion/?page_id=%s&boost_id=%s&source=%s&referral=%s&restore_saved_settings=%s&coupon_promotion_group_id=%s&ad_account_id=%s&scroll_to_section=%s&request_data=%s
webview/?url=%s
work_contact_invite
work_contact_invite/?group_id=%s
work_contacts_tab
work_groups_tab
workplace_gysj
workplace_pysf
workplace_remind_unclaimed/?user_id={user_id}&name={name}
zero_dialog
The above is taken from the class com.facebook.common.fblinks.FBLinks.
I had a requirement where the client wanted the Social Share buttons on the website to open Facebook and Messenger native apps only. Messenger share is straightforward and documented.
For Facebook, this is a workaround that I used (Tested on Android).
fb://faceweb/f?href=https%3A%2F%2Fm.facebook.com%2Fsharer.php%3Fu%3Dhttp%3A%2F%2Fwww.google.com
fb://faceweb/f?href={{urlencoded sharer.php url}}
Facebook doesn't actually guarantee these schemes will continue working. However at the time of writing this, it appears they've reverted back to the accepted answer's format.
For a while, they were matching the Android style scheme, as mentioned in the second answer, but this is no longer true.
Use this scheme with caution, but fully expect that an update to the Facebook app might make your app no longer properly link, but rather just open the home page.