예제 #1
0
# -*- coding: utf-8 -*-
__author__ = 'luckydonald'

from luckydonaldUtils.logger import logging  # pip install luckydonald-utils
logger = logging.getLogger(__name__)

from luckydonaldUtils.encoding import to_binary
from luckydonaldUtils import py3
from luckydonaldUtils import dependencies
from luckydonaldUtils.images.color import most_frequent_color

dependencies.import_or_install("PIL", "Pillow")
from PIL import Image

dependencies.import_or_install("webbrowser")
import webbrowser

from threading import Thread

from shairportdecoder.remote import AirplayRemote
from shairportdecoder.metadata import Infos
from shairportdecoder import decoder
from shairportdecoder.decoder import Processor
from time import sleep

if py3:
	from socketserver import TCPServer
	from http.server import SimpleHTTPRequestHandler
else:
	from SimpleHTTPServer import SimpleHTTPRequestHandler
	from SocketServer import TCPServer
예제 #2
0
# -*- coding: utf-8 -*-
__author__ = 'luckydonald'

from luckydonaldUtils.logger import logging  # pip install luckydonald-utils
logger = logging.getLogger(__name__)

from luckydonaldUtils.encoding import to_binary
from luckydonaldUtils import py3
from luckydonaldUtils import dependencies
from luckydonaldUtils.images.color import most_frequent_color

dependencies.import_or_install("PIL", "Pillow")
from PIL import Image

dependencies.import_or_install("webbrowser")
import webbrowser

from threading import Thread

from shairportdecoder.remote import AirplayRemote
from shairportdecoder.metadata import Infos
from shairportdecoder import decoder
from shairportdecoder.decoder import Processor
from time import sleep

if py3:
    from socketserver import TCPServer
    from http.server import SimpleHTTPRequestHandler
else:
    from SimpleHTTPServer import SimpleHTTPRequestHandler
    from SocketServer import TCPServer
예제 #3
0
# -*- coding: utf-8 -*-

__author__ = 'luckydonald'

from luckydonaldUtils.logger import logging  # pip install luckydonald-utils
from luckydonaldUtils.encoding import to_native as n  # pip install luckydonald-utils
from luckydonaldUtils.dependencies import import_or_install  # pip install luckydonald-utils
from luckydonaldUtils.network.ip import binary_ip_to_str  # pip install luckydonald-utils
logger = logging.getLogger(__name__)
import requests
from shairportdecoder.remote.utils import ServiceListener, ResultWaiter

zeroconf = import_or_install("zeroconf", "zeroconf")
from zeroconf import ServiceBrowser, Zeroconf

airplay_zeroconf_service = "_dacp._tcp.local."  # local?
airplay_prefix = "iTunes_Ctrl_{dacp_id}"
base_url = "{host}:{port}/ctrl-int/1/{command}"


class AirplayRemote(object):
	"""
	GET /ctrl-int/1/pause HTTP/1.1
	Active-Remote: 1986535575
	"""

	def __init__(self,  token, host, port):
		super(AirplayRemote, self).__init__()
		self.token = token
		self.host = host
		self.port = port