Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- alias xml {
- var %binary = $1, %offset = $2, %element = $3, %variable = $4
- if ($bfind(%binary,%offset,$+(<,%element))) {
- var %< = $v1, %> = $bvar(%binary,0), %offset = $v1 + 1
- if ($bfind(%binary,%offset,>)) {
- var %> = $v1, %offset = $v1 + 1
- bcopy -c &element 1 %binary $calc(%< + 1) $calc(%> - (%< + 1))
- }
- if ($bfind(%binary,%offset,$+(</,%element))) {
- var %< = $v1, %offset = $v1 + 1
- if (%variable) {
- bcopy -c %variable 1 %binary $calc(%> + 1) $calc(%< - (%> + 1))
- return %variable
- }
- else {
- bcopy -c &content 1 %binary $calc(%> + 1) $calc(%< - (%> + 1))
- }
- }
- }
- if ($bvar(&content,0)) {
- bset &content $calc($v1 + 1) 0
- while ($bfind(&content,0,<)) {
- var %< = $v1
- if ($bfind(&content,%<,>)) {
- var %> = $v1
- bcopy -c &content %< &content $calc(%> + 1) -1
- }
- else {
- bcopy -c &content %< &content $calc(%< + 1) -1
- }
- }
- return $bvar(&content,1,4096).text
- }
- }
- on *:SockOpen:bwdl: {
- sockwrite -nt bwdl GET $+(/openapi.xml) HTTP/1.1
- sockwrite -n bwdl Host: blastwaveradio.com
- sockwrite -n bwdl $crlf
- }
- on *:SockRead:bwdl: {
- var %read | sockRead %read
- if (*title* iswm %read || *artist* iswm %read) {
- ; echo %read
- %bwdl = %bwdl %read
- if (*title* iswm %bwdl && *artist* iswm %bwdl) {
- //bset -t &bvar 1 %bwdl
- /describe %bwdl.chan np: $xml(&bvar,0,artist) - $xml(&bvar,0,title)
- sockClose bwdl
- }
- }
- ;echo %read
- }
- alias bwnp {
- sockClose bwdl
- sockOpen bwdl blastwaveradio.com 80
- set %bwdl
- set %bwdl.chan $chan
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement