EPIC Cyprus – How to Top Up
To top up your account:
- Dial 202, the 14-digit code#, and press Send/Call.
- Call for free to 2020, and follow the instructions.
To top up the account of another EPIC subscriber
- Call 136 and follow the instructions.
To top up your account:
To top up the account of another EPIC subscriber
Starlink has emerged as a beacon of hope for many remote and underserved regions in a world increasingly reliant on high-speed internet connectivity. However, there might be situations where you need to set your Starlink dish to stow mode, but you don’t have access to it via your phone due to connectivity issues or because you’ve enabled bypass mode. In such cases, you can manually stow your Starlink dish by following these simple steps.
Step 1: Power Off the Starlink Dish
The first step is to turn off the power to your Starlink dish. This can be done by unplugging it or switching it off using the provided power source.
Step 2: Remove the Base
Depending on your installation, your Starlink dish is securely attached to a base, which can be metallic or any other kind of base. You’ll need to detach the dish from this base. This is typically done by removing bolts, screws, or other fasteners holding the dish in place.
Step 3: Place the Dish Upside Down
After you’ve separated the dish from its base, place it upside down on a clean and flat surface. Ensure the surface is level to allow a smooth transition to stow mode.
Step 4: Power On the Starlink Dish
Now, power on the Starlink dish by reconnecting it to its power source. The dish will go through its initialization process, but when it detects that it’s in an unusual position (upside down), it will initiate the stow mode.
Step 5: Wait for the Dish to Stow
After a few seconds (usually less than a minute), the Starlink dish will automatically move to stow mode. During this process, it will adjust its position and fold into a more compact configuration, which is ideal for storage and transportation.
By following these steps, you can manually set your Starlink dish to stow mode even when you can’t access it through your phone due to connectivity issues or because you’ve enabled bypass mode. This is particularly helpful when storing your Starlink equipment safely or transporting it to a different location.
Remember that these steps are intended for emergencies or specific use cases. Ideally, you should use the Starlink app or web interface to manage your dish. However, manually setting your Starlink dish to stow mode can be a handy backup plan when technology doesn’t cooperate.
In today’s surveillance-driven world, managing and retrieving recorded videos from Network Video Recorders (NVRs) is crucial for security professionals. This blog post will introduce a set of Python scripts that automate the process of searching for and downloading recorded videos from a HIKVision NVR. The scripts enable users to specify a date range and camera track, making it easier to access and manage video footage efficiently.
The Python Scripts:
generate.py
#!/usr/bin/env python
# This scripts calls search.py to search in the HIKVision NVR for recorded videos and the uses download.py to download those videos.
# The script loops over the camera tracks and the last 120 days.
import sys
import os
import datetime
base = datetime.datetime.today().replace(hour=0, minute=0, second=0, microsecond=0);
numdays = 120;
dateList = [base - datetime.timedelta(days=x) for x in range(numdays)];
tracks = ["101", "201", "301", "401", "501", "601", "701", "801"];
for trackID in tracks:
for dateItem in dateList:
os.system("python search.py " + trackID + " " + dateItem.strftime('%Y-%m-%dT%H:%M:%SZ') + " " + (dateItem + datetime.timedelta(days=1)).strftime('%Y-%m-%dT%H:%M:%SZ'));
for trackID in tracks:
for dateItem in dateList:
os.system("python download.py " + trackID + " " + dateItem.strftime('%Y-%m-%dT%H:%M:%SZ') + " " + (dateItem + datetime.timedelta(days=1)).strftime('%Y-%m-%dT%H:%M:%SZ'));
search.py
and download.py
.search.py
#!/usr/bin/env python
# This script makes an API call to the HIKVision NVR with a Track ID and a datetime range and retrieves an XML list with all videos with their download links that were recorded on that camera during that time period.
import sys
import os
trackID = sys.argv[1];
startTime = sys.argv[2];
endTime = sys.argv[3];
xmlFilename = "results/" + trackID + "." + startTime + "." + endTime + ".xml";
os.system("curl 'http://username:[email protected]/ISAPI/ContentMgmt/search' --data-raw $'<?xml version='1.0' encoding='UTF-8'?>\n<CMSearchDescription><searchID>CA77BA52-0780-0001-34B2-6120F2501D36</searchID><trackList><trackID>" + trackID + "</trackID></trackList><timeSpanList><timeSpan><startTime>" + startTime + "</startTime><endTime>" + endTime + "</endTime></timeSpan></timeSpanList><maxResults>100</maxResults><searchResultPostion>0</searchResultPostion><metadataList><metadataDescriptor>//recordType.meta.std-cgi.com</metadataDescriptor></metadataList></CMSearchDescription>' -o "+ xmlFilename);
curl
to send the request to the NVR.download.py
#!/usr/bin/env python
# This script reads an XML file that was retrieved from the HIKVision NVR which containes videos with their download links. For each link, it appends the credentials for login and uses ffmpeg to download the video.
from xml.dom import minidom
import os
import sys
trackID = sys.argv[1];
startTime = sys.argv[2];
endTime = sys.argv[3];
xmlFilename = "results/" + trackID + "." + startTime + "." + endTime + ".xml";
dom = minidom.parse(xmlFilename)
elements = dom.getElementsByTagName('playbackURI')
i = 0
for element in elements:
video = element.firstChild.data
video = video.replace("rtsp://10.20.30.1", "rtsp://username:[email protected]")
video = video.replace("\n", "")
size = video.rsplit('=', 1)[1]
os.system("ffmpeg -i '" + video + "' -max_muxing_queue_size " + size + "0 videos/" + trackID + "." + startTime + "." + endTime + "." + str(i+1) + ".mp4;")
i += 1
exit
ffmpeg
to download the video.To use these scripts, you’ll need to modify the following parts:
base
variable in generate.py
to set the desired starting date.tracks
list in generate.py
to specify the camera tracks you want to search.username
, password
, and the IP address in the curl
command in search.py
with your NVR’s credentials and address.ffmpeg
installed on your system for video downloading.With these Python scripts, you can automate the process of searching for and downloading recorded videos from a HIKVision NVR. This can significantly simplify video retrieval tasks for security professionals, saving time and effort in managing surveillance footage. By customizing and expanding upon these scripts, you can further enhance your video management capabilities and streamline your security operations.
Regularly updating the firmware of your HIKVision DVR (Digital Video Recorder) is crucial to ensure optimal performance and security. In this blog post, we will walk you through the process of upgrading your HIKVision DVR firmware using simple command-line tools like curl
. We will also show you how to check the upgrade status to ensure a smooth and successful update.
Before you begin, make sure you have the following information and files ready:
digicap.dav
). Ensure you download this file from the official HIKVision website to guarantee its authenticity.To start the firmware upgrade process, open your terminal or command prompt and use the curl
command as follows:
curl -k --request PUT --data-binary "@digicap.dav" 'http://username:[email protected]/ISAPI/System/updateFirmware';
Explanation:
curl
: This is a command-line tool for transferring data with URLs.-k
: This option tells curl
to allow connections to SSL sites without certificates. It’s useful when connecting to devices with self-signed certificates.--request PUT
: This specifies the HTTP request method as PUT, which is used for updating the firmware.--data-binary "@digicap.dav"
: Here, we provide the firmware file in DAV format as binary data.'http://username:[email protected]/ISAPI/System/updateFirmware'
: Replace username
and password
with your DVR’s login credentials, and 10.20.30.1
with your DVR’s IP address. This URL is where the firmware update request is sent.To monitor the status of the firmware upgrade and ensure everything is proceeding as expected, use the following curl
command:
curl -k 'http://username:[email protected]/ISAPI/System/upgradeStatus';
Explanation:
curl
: As before, this is the command-line tool for making URL requests.-k
: Again, this option allows connections to SSL sites without certificates.'http://username:[email protected]/ISAPI/System/upgradeStatus'
: Replace the placeholders with your DVR’s login credentials and IP address. This URL is where you can check the upgrade status.Conclusion: Updating your HIKVision DVR’s firmware is essential for keeping it secure and running smoothly. By following these simple steps and using the curl
commands provided, you can ensure that your DVR is up to date with the latest firmware. Remember to download firmware updates only from trusted sources like the official HIKVision website to avoid any security risks.
$ curl -k --request PUT --data-binary "@digicap.dav" 'http://username:[email protected]/ISAPI/System/updateFirmware'; <?xml version="1.0" encoding="UTF-8" ?> <ResponseStatus version="1.0" xmlns="urn:psialliance-org"> <requestURL>/ISAPI/System/updateFirmware</requestURL> <statusCode>7</statusCode> <statusString>Reboot Required</statusString> <subStatusCode>rebootRequired</subStatusCode> </ResponseStatus> # In another terminal as the above command blocks. #Execute the status command. $ curl -k 'http://username:[email protected]/ISAPI/System/upgradeStatus'; <?xml version="1.0" encoding="UTF-8" ?> <upgradeStatus version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema"> <upgrading>true</upgrading> <percent>98</percent> </upgradeStatus> $ curl -k 'http://username:[email protected]/ISAPI/System/upgradeStatus'; <?xml version="1.0" encoding="UTF-8" ?> <upgradeStatus version="1.0" xmlns="http://www.hikvision.com/ver20/XMLSchema"> <upgrading>false</upgrading> <percent>0</percent> </upgradeStatus>