"""Utilities for dealing with the webcams."""
-from abc import abstractmethod
-import datetime
-import json
import logging
-import os
-import re
-import subprocess
-import sys
-from typing import Any, Dict, List, Optional, Set
-
-import argparse_utils
-import config
-import logging_utils
+
import smart_home.device as dev
-from google_assistant import ask_google, GoogleResponse
-from decorator_utils import timeout, memoized
logger = logging.getLogger(__name__)
+
class BaseCamera(dev.Device):
camera_mapping = {
'cabin_drivewaycam': 'cabin_driveway',
'outside_backyard_camera': 'backyard',
- 'outside_driveway_camera': 'driveway',
+ 'outside_driveway_camera_wired': 'driveway',
+ 'outside_driveway_camera_wifi': 'driveway',
'outside_doorbell_camera': 'doorbell',
- 'outside_front_door_camera': 'frontdoor',
+ 'outside_front_door_camera': 'front_door',
+ 'crawlspace_camera': 'crawlspace',
}
def __init__(self, name: str, mac: str, keywords: str = "") -> None:
self.camera_name = BaseCamera.camera_mapping.get(name, None)
def get_stream_url(self) -> str:
- assert self.camera_name is not None
- return f'http://10.0.0.56:81/mjpg/{self.camera_name}/video.mjpg?h=1024&q=99'
+ name = self.camera_name
+ assert name is not None
+ if name == 'driveway':
+ return 'http://10.0.0.226:8080/Umtxxf1uKMBniFblqeQ9KRbb6DDzN4/mjpeg/GKlT2FfiSQ/driveway'
+ else:
+ return f'http://10.0.0.226:8080/Umtxxf1uKMBniFblqeQ9KRbb6DDzN4/mp4/GKlT2FfiSQ/{name}/s.mp4'