vodafone-station-cli
Version:
Access your Vodafone Station from the comfort of the command line.
51 lines (50 loc) • 1.96 kB
TypeScript
import { Log } from '../logger';
import { Protocol } from './discovery';
import { DocsisChannelType, DocsisStatus, HumanizedDocsis31ChannelStatus, HumanizedDocsisChannelStatus, Modem } from './modem';
import { CryptoVars } from './tools/html-parser';
export interface ArrisDocsisStatus {
downstream: ArrisDocsisChannelStatus[];
downstreamChannels: number;
ofdmChannels: number;
time: string;
upstream: ArrisDocsisChannelStatus[];
upstreamChannels: number;
}
export interface ArrisDocsisChannelStatus {
ChannelID: string;
ChannelType: DocsisChannelType;
Frequency: number | string;
LockStatus: string;
Modulation: string;
PowerLevel: string;
SNRLevel?: number | string;
}
export interface SetPasswordRequest {
AuthData: string;
EncryptData: string;
Name: string;
}
export interface SetPasswordResponse {
encryptData: string;
p_status: string;
p_waitTime?: number;
}
export declare function normalizeChannelStatus(channelStatus: ArrisDocsisChannelStatus): HumanizedDocsis31ChannelStatus | HumanizedDocsisChannelStatus;
export declare function normalizeDocsisStatus(arrisDocsisStatus: ArrisDocsisStatus): DocsisStatus;
export declare class Arris extends Modem {
readonly modemIp: string;
readonly protocol: Protocol;
readonly logger: Log;
private csrfNonce;
constructor(modemIp: string, protocol: Protocol, logger: Log);
addCredentialToCookie(): Promise<void>;
createServerRecord(setPasswordRequest: SetPasswordRequest): Promise<SetPasswordResponse>;
docsis(): Promise<DocsisStatus>;
encryptPassword(password: string, cryptoVars: CryptoVars): SetPasswordRequest;
fetchCredential(): Promise<string>;
getCurrentCryptoVars(): Promise<CryptoVars>;
login(password: string): Promise<void>;
loginPasswordCheck(encryptedData: string, cryptoVars: CryptoVars, key: string): string;
logout(): Promise<void>;
restart(): Promise<unknown>;
}